如何根据R数据框中的列名对行值进行子集化?
要根据R数据框中的列名对行值进行子集化,我们可以按照以下步骤操作-
首先,创建一个数据框。
然后,使用seq_len函数以相同的方式创建大小等于数据框中行数和行名称的列名样本,然后使用cbind函数根据列名对行进行子集化。
创建数据框
让我们创建一个数据框,如下所示-
例子
Gender_1<-sample(c("Male","Female"),20,replace=TRUE)
Gender_2<-sample(c("Male","Female","Unknown"),20,replace=TRUE)
df<-data.frame(Gender_1,Gender_2)
df执行时,上述脚本生成以下内容output(thisoutputwillvaryonyoursystemduetorandomization)-
输出
Gender_1 Gender_2 1 Female Female 2 Female Female 3 Male Male 4 Male Male 5 Male Male 6 Male Female 7 Female Male 8 Female Female 9 Male Male 10 Female Male 11 Male Female 12 Female Male 13 Male Female 14 Female Female 15 Female Male 16 Female Female 17 Female Female 18 Female Female 19 Male Unknown 20 Female Female
根据列名对行进行子集
使用示例函数以与seq_len函数相同的方式创建示例列名和行名,然后使用cbind函数根据使用示例函数创建的列名对行进行子集-
例子
Gender_1<-sample(c("Male","Female"),20,replace=TRUE)
Gender_2<-sample(c("Male","Female","Unknown"),20,replace=TRUE)
df<-data.frame(Gender_1,Gender_2)
Columns<-sample(c("Gender_1","Gender_2"),20,replace=TRUE)
rownames(df)<-seq_len(nrow(df))
df[cbind(rownames(df),Columns)]输出
[1] "Female" "Female" "Male" "Male" "Male" "Female" "Female" "Female" [9] "Male" "Female" "Female" "Female" "Male" "Female" "Female" "Female" [17] "Female" "Female" "Male" "Female"
热门推荐
10 周年庆典祝福语致辞简短
11 虎年台词祝福语大全简短
12 中考祝福语简短古风短句
13 给老公祝福语简短2026
14 开店送礼祝福语大全简短
15 浪漫的未来祝福语简短
16 姥爷生日诗句祝福语简短
17 虎年文案简短祝福语长辈
18 同学有弟弟祝福语简短