使用R中另一个.csv文件的信息从.csv文件中删除列

使用R中另一个.csv文件的信息从.csv文件中删除列,r,csv,R,Csv,我有两个csv文件。文件1(consumpion.scv)的标题中有住户标识号,每行中有小时消费值。每列表示另一个hosuehold。文件二是一列,只包含我想包括的家庭号码。 我想制作一份文件,其中仅包括文件b中包含的家庭消费时间序列 消费由于您没有包括在内,我不得不创建一个: set.seed(123) consumption <- matrix(floor(runif(26*3, 10, 30)), nrow=3) colnames(consumption) <- LETTERS

我有两个csv文件。文件1(consumpion.scv)的标题中有住户标识号,每行中有小时消费值。每列表示另一个hosuehold。文件二是一列,只包含我想包括的家庭号码。
我想制作一份文件,其中仅包括文件b中包含的家庭消费时间序列


消费由于您没有包括在内,我不得不创建一个:

set.seed(123)
consumption <- matrix(floor(runif(26*3, 10, 30)), nrow=3)
colnames(consumption) <- LETTERS
householdno <- data.frame(houses=sample(LETTERS, 5))
诀窍是使用。TRUE包括列,FALSE排除该列

将检查第一个向量中的每个元素是否存在于第二个向量中。它返回第一个向量长度的逻辑向量


最后一步是使用该逻辑向量从data.frame中将所需列子集。如果你决定将向量存储在变量中,这将更可读。

请显示基于它的重复性示例和预期输出的几行。嗨,MAAAR,如果我的答案帮助你解决问题,请考虑。
consumption[, colnames(consumption) %in% householdno[,1]]
#       C  F  J  P  Z
# [1,] 20 27 21 12 14
# [2,] 27 14 15 14 17
# [3,] 21 10 12 19 22