如何在R数据帧中找到字符值的行索引和列索引?
为了找到R数据帧中数值的行索引和列索引,我们使用哪个函数,如果该值是字符,则将使用相同的函数,但是我们需要适当地传递该值。例如,如果我们有一个名为df的数据框,其中包含一个名为Data的值,则可以通过使用命令which(df ==“ Data”,arr.ind = TRUE)来查找Data的行索引和列索引。
例1
考虑以下数据帧-
> x1<-sample(c("Male","Female"),20,replace=TRUE)输出结果> x2<-rpois(20,5)
> df1<-data.frame(x1,x2)
> df1
x1 x21 Female 5
2 Female 5
3 Female 6
4 Female 6
5 Male 6
6 Female 6
7 Female 7
8 Male 0
9 Male 4
10 Male 3
11 Male 8
12 Female 6
13 Female 5
14 Male 5
15 Male 4
16 Male 7
17 Female 4
18 Male 4
19 Male 3
20 Male 5
在df1中找到Male的行和列索引-
> which(df1=="Male",arr.ind=TRUE)输出结果
row col[1,] 5 1
[2,] 8 1
[3,] 9 1
[4,] 10 1
[5,] 11 1
[6,] 14 1
[7,] 15 1
[8,] 16 1
[9,] 18 1
[10,] 19 1
[11,] 20 1
例2
> y1<-sample(c("India","UK","USA"),20,replace=TRUE)输出结果> y2<-sample(c("Egypt","UK","Sudan"),20,replace=TRUE)
> df2<-data.frame(y1,y2)
> df2
y1 y21 UK Sudan
2 USA Egypt
3 India UK
4 UK Egypt
5 UK Sudan
6 India UK
7 USA Egypt
8 UK UK
9 UK Sudan
10 USA Egypt
11 UK Egypt
12 India Egypt
13 India Egypt
14 India Egypt
15 UK UK
16 India Sudan
17 UK Sudan
18 UK UK
19 UK Sudan
20 India Sudan
在df2中找到英国的行和列索引-
> which(df2=="UK",arr.ind=TRUE)输出结果
row col[1,] 1 1
[2,] 4 1
[3,] 5 1
[4,] 8 1
[5,] 9 1
[6,] 11 1
[7,] 15 1
[8,] 17 1
[9,] 18 1
[10,] 19 1
[11,] 3 2
[12,] 6 2
[13,] 8 2
[14,] 15 2
[15,] 18 2
范例3
> z1<-sample(c("Milk","Curd","Pastry"),20,replace=TRUE)输出结果> z2<-sample(c("Milk","Tea"),20,replace=TRUE)
> df3<-data.frame(z1,z2)
> df3
z1 z21 Pastry Tea
2 Pastry Milk
3 Milk Milk
4 Pastry Tea
5 Curd Tea
6 Pastry Tea
7 Curd Tea
8 Curd Tea
9 Milk Tea
10 Milk Tea
11 Pastry Milk
12 Pastry Tea
13 Curd Milk
14 Milk Tea
15 Milk Milk
16 Curd Tea
17 Milk Tea
18 Curd Tea
19 Curd Milk
20 Milk Milk
在df3中找到Milk的行和列索引-
> which(df3=="Milk",arr.ind=TRUE)输出结果
row col[1,] 3 1
[2,] 9 1
[3,] 10 1
[4,] 14 1
[5,] 15 1
[6,] 17 1
[7,] 20 1
[8,] 2 2
[9,] 3 2
[10,] 11 2
[11,] 13 2
[12,] 15 2
[13,] 19 2
[14,] 20 2
以上是 如何在R数据帧中找到字符值的行索引和列索引? 的全部内容, 来源链接: utcz.com/z/349856.html