【发布时间】:2018-06-01 09:36:18
【问题描述】:
我有一个需要重塑的数据框的问题。
我有这个命令:
library(tidyverse)
df1 = df1 %>% gather(Day, value, Day01:Day31) %>% spread(Station, value)
我得到这个错误:
Error: Duplicate identifiers for rows (130933, 131029), (389113, 389209), (647293, 647389), (905473, 905569), (1163653, 1163749), (1421833, 1421929), (1680013, 1680109), (1938193, 1938289), (2196373, 2196469), (2454553, 2454649), (2712733, 2712829), (2970913, 2971009), (3229093, 3229189), (3487273, 3487369), (3745453, 3745549), (4003633, 4003729), (4261813, 4261909), (4519993, 4520089), (4778173, 4778269), (5036353, 5036449), (5294533, 5294629), (5552713, 5552809), (5810893, 5810989), (6069073, 6069169), (6327253, 6327349), (6585433, 6585529), (6843613, 6843709), (7101793, 7101889), (7359973, 7360069), (7618153, 7618249), (7876333, 7876429), (130934, 131030), (389114, 389210), (647294, 647390), (905474, 905570), (1163654, 1163750), (1421834, 1421930), (1680014, 1680110), (1938194, 1938290), (2196374, 2196470), (2454554, 2454650), (2712734, 2712830), (2970914, 2971010), (3229094, 3229190), (3487274, 3487370), (3745454, 3745550), (4003634, 4003730), (4261814, 4261910), (4519994, 4520090
奇怪的是我也得到了这个结果:
library(dplyr)
test = rownames_to_column(df1, "VALUE")
length(unique(test$VALUE)) ### Result 258180 = Same as number of rows
length(unique(test$VALUE)) == nrow(test) #### Result TRUE
如您所见,错误消息还包含我的数据框中甚至不存在的行。
该命令适用于我拥有的所有其他数据帧,它们具有 1:1 相同的结构。它们只有更少的行数。
我不知道如何为您提供数据框,因为它太大了。我把它上传到我的大学,所以你可以下载数据框。
这是链接(我希望它允许这样发布)
【问题讨论】:
-
您应该编辑以发布重现问题的数据子集,最好发布调用
dput的结果。
标签: r dataframe tidyr tidyverse