r - 根据条件提取列名和具体值

标签 r dataframe

假设我有以下数据框:

firstname <- c('Doug','Tom','Glenn','Billy','Angelo')
city <- c('Tulsa','Unknown','Miami','Houston','Unknown')
state <- c('OK','CA','FL','Unknown','Unknown')
job <- c('Unknown','Plumber','Professor','Unknown','Unknown')

list_test <- data.frame(firstname, city, state, job)

我想提取其中一列未知的名字列名称。换句话说,我想要一个如下所示的表格:

  firstname  attribute
       Doug        job
        Tom       city
      Billy      state
      Billy        job
     Angelo       city
     Angelo      state
     Angelo        job

最佳答案

library(reshape2)
library(dplyr)
list_test%>%melt(id.var='firstname',variable.name='attribute')
          %>%filter(value=='Unknown')
          %>%select(-3)


firstname attribute
1       Tom      city
2    Angelo      city
3     Billy     state
4    Angelo     state
5      Doug       job
6     Billy       job
7    Angelo       job

关于r - 根据条件提取列名和具体值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32145183/

相关文章:

python - 按列比较不同的 pandas 数据框与公差变化

r - 将 R 与其他非 Java 语言接口(interface)/将 R 编译为可执行文件

r - 从 sendCustomMessage() 在 htmlwidgets/plotly 对象中定义悬停信息

r - 如何自动将 huxtables 拆分到多个页面?

R:按级别频率和绘图排序因子

r - 使用一个 data.frame 更新另一个 data.frame

r - R中获取向量中元素频率向量的最简单方法

python - 如何根据分组值将字典插入数据框的行?

python - 具有用于分箱目的的条件的数据帧分组聚合计数函数

r - 获取存在条件的行