Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 数据帧列表-从每个数据帧中提取一行_R_Excel_List_Dataframe_Lapply - Fatal编程技术网

R 数据帧列表-从每个数据帧中提取一行

R 数据帧列表-从每个数据帧中提取一行,r,excel,list,dataframe,lapply,R,Excel,List,Dataframe,Lapply,我有一个通过导入excel文件创建的数据框列表,这些文件没有唯一的结构,例如: 有时我在单元格A8中有一个标签“Contact”,有时在A9中有一个标签。但它总是被标记为“Contact” 如果联系人处于固定位置,例如A9,我知道如何提取“联系人”。在这种情况下,我将编写以下代码: lapply(test,"[",9,1,drop=FALSE) 如何更改代码以动态查找每个数据帧中“联系人”标签出现在哪一行 谢谢 我看我还不够清楚。好的,这是我名单中很多人的2个DF的照片。您可以看到“公司名称”

我有一个通过导入excel文件创建的数据框列表,这些文件没有唯一的结构,例如:

有时我在单元格
A8
中有一个标签
“Contact”
,有时在
A9
中有一个标签。但它总是被标记为
“Contact”

如果联系人处于固定位置,例如
A9
,我知道如何提取
“联系人”
。在这种情况下,我将编写以下代码:

lapply(test,"[",9,1,drop=FALSE)
如何更改代码以动态查找每个数据帧中“联系人”标签出现在哪一行

谢谢

我看我还不够清楚。好的,这是我名单中很多人的2个DF的照片。您可以看到“公司名称”值位于第一个DF的第8行和第二个DF的第10行。如何使用此函数lappy(test,“[”,9,1,drop=FALSE)动态获取行


假设
test
是您的数据帧,字符串
“Contact”
位于第一列和未知行中。 然后可以将第一列定义为数据帧的行名称

test <- data.frame(names=c("contact","other"), x=c(1,2), y=c(3,4))
rownames(test) <- test[,1]

我想您应该使用
which()
查找包含目标字符串的行,如下所示:

df <- data.frame(cont = c(rep("Some data",7),"Contact",rep("Some data",2)), val = 1:10, stringsAsFactors = F)
df[which(df$cont == "Contact"),]

df您不能将包含单词“Contact”(可能是第一列)的列定义为数据帧的行名称吗?然后您可以通过“test[“Contact”,]”访问该行。
df <- data.frame(cont = c(rep("Some data",7),"Contact",rep("Some data",2)), val = 1:10, stringsAsFactors = F)
df[which(df$cont == "Contact"),]