如何删除R向量中的起始零和结束零?

要删除 R 向量中的起始零和结束零,我们可以使用 min 和 max 函数访问除 0 之外的值,然后使用单个方括号进行子集化。例如,如果我们有一个名为 x 的向量,那么我们可以使用以下命令删除起始零和结束零 -

x[min(which(x!=0)):max(which(x!=0))]

示例

x1<-c(rep(0,10),rpois(50,1),rep(0,10))

x1

输出结果
[1] 0 0 0 0 0 0 0 0 0 0 0 0 1 0 3 0 0 1 1 0 0 0 0 1 0 0 1 0 0 4 2 1 0 0 0 0 0 0

[39] 1 0 2 0 0 2 4 1 1 0 2 0 0 1 2 1 1 0 3 0 1 0 0 0 0 0 0 0 0 0 0 0

示例

x1[min(which(x1!=0)):max(which(x1!=0))]
输出结果
[1] 1 0 3 0 0 1 1 0 0 0 0 1 0 0 1 0 0 4 2 1 0 0 0 0 0 0 1 0 2 0 0 2 4 1 1 0 2 0

[39] 0 1 2 1 1 0 3 0 1

示例

x2<-c(rep(0,20),rpois(150,1),rep(0,20))

x2

输出结果
  [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 0 1 3 2 2 1 3 0 2 3 1

 [38] 2 0 1 0 1 0 0 1 2 3 1 2 1 3 1 1 0 2 0 0 1 4 1 1 0 0 0 0 0 0 0 1 2 3 0 1 2

 [75] 0 1 1 0 0 1 2 0 2 2 0 1 1 0 1 2 1 2 0 1 1 7 0 3 3 1 0 2 1 1 0 0 1 0 0 1 0

[112] 2 0 1 1 0 2 3 0 1 1 0 1 1 1 2 0 0 1 1 1 1 2 1 1 1 1 0 1 0 0 0 1 1 1 0 1 0

[149] 3 0 2 2 1 0 2 0 1 1 2 0 1 3 1 1 1 0 0 1 2 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

[186] 0 0 0 0 0

示例

x2[min(which(x2!=0)):max(which(x2!=0))]
输出结果
[1] 1 0 1 1 1 0 1 3 2 2 1 3 0 2 3 1 2 0 1 0 1 0 0 1 2 3 1 2 1 3 1 1 0 2 0 0 1

[38] 4 1 1 0 0 0 0 0 0 0 1 2 3 0 1 2 0 1 1 0 0 1 2 0 2 2 0 1 1 0 1 2 1 2 0 1 1

[75] 7 0 3 3 1 0 2 1 1 0 0 1 0 0 1 0 2 0 1 1 0 2 3 0 1 1 0 1 1 1 2 0 0 1 1 1 1

[112] 2 1 1 1 1 0 1 0 0 0 1 1 1 0 1 0 3 0 2 2 1 0 2 0 1 1 2 0 1 3 1 1 1 0 0 1 2

[149] 5

示例

x3<-c(rep(0,20),rpois(150,8),rep(0,20))

x3

输出结果
  [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 5 6 8 5

 [26] 11 6 7 7 15 5 15 12 9 5 5 5 6 4 10 10 5 5 5 8 3 12 6 7 12

 [51] 8 13 8 6 12 11 15 6 12 9 9 3 3 6 7 7 11 6 3 5 12 11 6 6 13

 [76] 8 8 9 9 5 10 9 7 8 6 10 5 10 8 7 8 4 8 10 8 12 3 10 8 7

[101] 7 5 11 18 7 7 9 14 5 12 3 10 6 12 5 3 5 7 8 10 9 3 13 11 10

[126] 6 5 5 9 9 9 7 4 8 5 10 11 3 10 10 10 11 8 12 7 11 10 4 9 3

[151] 5 2 7 8 8 10 9 12 7 12 8 9 7 7 6 13 11 7 6 10 0 0 0 0 0

[176] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

示例

x3[min(which(x3!=0)):max(which(x3!=0))]
输出结果
[1] 5 5 6 8 5 11 6 7 7 15 5 15 12 9 5 5 5 6 4 10 10 5 5 5 8

[26] 3 12 6 7 12 8 13 8 6 12 11 15 6 12 9 9 3 3 6 7 7 11 6 3 5

[51] 12 11 6 6 13 8 8 9 9 5 10 9 7 8 6 10 5 10 8 7 8 4 8 10 8

[76] 12 3 10 8 7 7 5 11 18 7 7 9 14 5 12 3 10 6 12 5 3 5 7 8 10

[101] 9 3 13 11 10 6 5 5 9 9 9 7 4 8 5 10 11 3 10 10 10 11 8 12 7

[126] 11 10 4 9 3 5 2 7 8 8 10 9 12 7 12 8 9 7 7 6 13 11 7 6 10

示例

x4<-c(rep(0,20),rpois(150,50),rep(0,20))

x4

输出结果
  [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 39 63 39 53 62

 [26] 43 40 41 50 42 48 50 59 52 47 49 49 52 48 54 46 59 43 45 41 57 56 54 48 43

 [51] 47 47 53 51 44 54 56 49 55 42 64 48 47 46 47 51 52 32 39 49 47 59 39 50 54

 [76] 46 52 46 61 40 58 56 50 56 66 55 60 54 56 39 55 41 50 53 56 51 53 52 53 50

[101] 58 43 42 42 53 54 50 59 53 47 61 47 62 62 45 60 45 49 59 46 57 48 55 55 47

[126] 47 61 55 55 50 61 45 60 52 51 32 47 47 61 43 42 61 58 44 51 55 46 51 46 42

[151] 40 43 54 41 63 52 48 41 43 70 47 55 45 54 47 57 56 54 53 49 0 0 0 0 0

[176] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

示例

x4[min(which(x4!=0)):max(which(x4!=0))]
输出结果
[1] 39 63 39 53 62 43 40 41 50 42 48 50 59 52 47 49 49 52 48 54 46 59 43 45 41

[26] 57 56 54 48 43 47 47 53 51 44 54 56 49 55 42 64 48 47 46 47 51 52 32 39 49

[51] 47 59 39 50 54 46 52 46 61 40 58 56 50 56 66 55 60 54 56 39 55 41 50 53 56

[76] 51 53 52 53 50 58 43 42 42 53 54 50 59 53 47 61 47 62 62 45 60 45 49 59 46

[101] 57 48 55 55 47 47 61 55 55 50 61 45 60 52 51 32 47 47 61 43 42 61 58 44 51

[126] 55 46 51 46 42 40 43 54 41 63 52 48 41 43 70 47 55 45 54 47 57 56 54 53 49

示例

x5<-c(rep(0,20),rpois(150,200),rep(0,20))

x5

输出结果
  [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

 [19] 0 0 191 203 207 200 173 206 226 195 210 181 196 210 227 198 211 212

 [37] 193 214 204 212 220 171 218 209 219 201 191 179 207 197 181 204 195 213

 [55] 202 202 206 173 211 202 219 191 206 184 225 204 219 200 221 183 186 202

 [73] 211 200 199 214 180 186 211 215 212 213 225 199 206 189 228 206 221 176

 [91] 194 200 185 182 213 182 186 178 216 204 211 178 195 212 210 222 185 192

[109] 229 203 234 204 197 200 189 176 197 195 198 204 195 208 195 178 203 227

[127] 196 197 200 187 200 178 210 213 204 194 213 211 202 225 185 201 165 223

[145] 218 214 205 205 191 198 228 195 189 212 211 163 178 194 198 171 187 191

[163] 208 202 192 195 213 186 194 187 0 0 0 0 0 0 0 0 0 0

[181] 0 0 0 0 0 0 0 0 0 0

示例

x5[min(which(x5!=0)):max(which(x5!=0))]
输出结果
[1] 191 203 207 200 173 206 226 195 210 181 196 210 227 198 211 212 193 214

[19] 204 212 220 171 218 209 219 201 191 179 207 197 181 204 195 213 202 202

[37] 206 173 211 202 219 191 206 184 225 204 219 200 221 183 186 202 211 200

[55] 199 214 180 186 211 215 212 213 225 199 206 189 228 206 221 176 194 200

[73] 185 182 213 182 186 178 216 204 211 178 195 212 210 222 185 192 229 203

[91] 234 204 197 200 189 176 197 195 198 204 195 208 195 178 203 227 196 197

[109] 200 187 200 178 210 213 204 194 213 211 202 225 185 201 165 223 218 214

[127] 205 205 191 198 228 195 189 212 211 163 178 194 198 171 187 191 208 202

[145] 192 195 213 186 194 187

以上是 如何删除R向量中的起始零和结束零? 的全部内容, 来源链接: utcz.com/z/357101.html

回到顶部