在r中,使用for循环在列表中定义的dataframe中删除列
我有一个dataframe,我想删除列表中定义的列 首先,我列出了一个样本列表(我想保留这些样本),这些样本不在令人兴奋的数据框架中:在r中,使用for循环在列表中定义的dataframe中删除列,r,list,dataframe,multiple-columns,drop,R,List,Dataframe,Multiple Columns,Drop,我有一个dataframe,我想删除列表中定义的列 首先,我列出了一个样本列表(我想保留这些样本),这些样本不在令人兴奋的数据框架中: df_1 <- data.frame(sample = c("col1","col3"), gender = c("m","v")) samplename <- list(df_1) df_1您可以尝试: test_df[,!(names(test_df) %in% d
df_1 <- data.frame(sample = c("col1","col3"), gender = c("m","v"))
samplename <- list(df_1)
df_1您可以尝试:
test_df[,!(names(test_df) %in% df_1$sample)]
col2 col4
1 1 aa
2 2 bb
3 3 cc
4 4 dd
5 5 ee
您可以尝试:
test_df[,!(names(test_df) %in% df_1$sample)]
col2 col4
1 1 aa
2 2 bb
3 3 cc
4 4 dd
5 5 ee
与Duck的答案基本相同:
库(dplyr)
测试_df%>%
选择(!df_1$sample)
返回
col2 col4
1 aa
2 bb
3立方厘米
4日
5.5 ee
与Duck的答案基本相同:
库(dplyr)
测试_df%>%
选择(!df_1$sample)
返回
col2 col4
1 aa
2 bb
3立方厘米
4日
5.5 ee
如果你不坚持循环的,你可以这样做:测试df[,setdiff(名称(测试df),samplename[[1]][[sample”]][[sample”]]]]
如果你不坚持循环的,你可以这样做:测试df[,setdiff(名称(测试df),samplename[[1]][[sample”]]]]].
@MoniquePlandsoen很棒!如果你对这个答案感到满意,你能接受它吗?:)@MoniquePlandsoen太棒了!如果你对这个答案感到满意,你能接受它吗?:)