【发布时间】:2019-09-11 17:22:36
【问题描述】:
我有以 -# 结尾的行值(# 范围从 4 到 8)。我有一个对应的列,该列具有与每个 -# 行关联的值。
我想使用 dplyr 来转置我的 df,以便将 -3 行转换为列字段,并将来自其他变量(列)的相应值的数量添加到每一列,因为它是“标题”(-4,-5等)
我使用 dplyr 包将行移动到列标题,但似乎无法获得正确的输出。
head(MFP)
PART_RMV_DT RMV_MFR_PART_NO RMV_LRU_TSO_TM RMV_LRU_TSR_TM LRU
1 2017-06-25 828300-5 MFP
9 2016-01-11 828300-5 17500 17500 MFP
17 2015-12-27 828300-5 16698 12193 MFP
19 2018-11-30 828300-5 40738 17494 MFP
21 2016-09-19 828300-5 25107 13528 MFP
23 2016-11-17 828300-5 35281 35281 MFP
t <- as.data.frame.matrix(xtabs(RMV_LRU_TSO_TM~RMV_MFR_PART_NO, MFP_df))
Error in Summary.factor(c(4268L, 472L, 3342L, 17L, 1L, 1L, 2834L, 5421L, :
‘sum’ not meaningful for factors
如果我的列中有 4 组基于 -# 的不同值,我想将这些值移动到列中,并从每个 -# 列下方的其他列中提取相关值。
【问题讨论】:
-
如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。是否期望拥有所有数字列?您确定您正确读取了数据吗?
-
我包括了我的“MFP_df”的样子——希望这会有所帮助。本质上,我希望 col 'RMV_MFR_PART_NO' 中的值成为列,并且 col 'RMV_LRU_TSO_TM' 值低于每个对应的 -# col
标签: r dplyr reformatting