我有一个737行的DataFrame,数据示例如下,我想对我的数据使用整形。我收到错误为Error in `.rowNamesDF<-`(x, value = value) : duplicate 'row.names' are not allowed In addition: Warning message: non-unique values when setting 'row.names':
它告诉我有重复的"row.names",但在我的样本数据集中我也有重复,它只在我的整个数据集中给了我正确的答案,它产生了这个错误,问题在哪里?
注意:下面的代码不会对包含重复数据的样本数据产生错误,但会在整个数据集中产生错误。
整个数据集可以在下面的链接中找到:https://www.dropbox.com/s/1rxzvqszvl1vzb9/ccc.csv?dl=0
df <- structure(list('User Name' = c("WolfelFigaro", "WolfelFigaro", "DeEvolver247", "DeEvolver247", "Raymond46194270", "Raymond46194270", "merapimanf"),
part1 = c("bonglez", "bonglez", "bonglez", "bonglez", "x", "bonglez", "9NewsQueensland"),
part2 = c("bonglez", "bonglez", NA, "xx", NA, NA, NA),
part3 = c("bonglez", "bonglez", NA, NA, NA, NA, NA)),
class = "data.frame", row.names = c("1", "2", "3", "4", "5", "6", "7"))
df3<-reshape(df,
direction = "long",
varying = list(names(df)[2:4]),
v.names = "Link",
idvar = c("user_name"))
整个数据集的代码:
df2 = read.csv("ccc.csv")
row.names(df2)
print(tbl_df(df2), n=737)
df4<-reshape(df2,
direction = "long",
varying = list(names(df2)[2:4]),
v.names = "x",
idvar = c("MENTION"))
df4["time"] <-NULL
df4["user_name"] <-NULL
df4["Row"] <-NULL
row.names(df4) <- NULL
net1 <- graph_from_data_frame(df4)
relationsp = get.adjacency(net1, sparse = FALSE)
您可以尝试:
library(igraph)
library(dplyr)
library(tidyr)
read.csv('ccc.csv') %>%
pivot_longer(cols = starts_with('part')) %>%
select(MENTION, value) -> df4
net1 <- graph_from_data_frame(df4)
relationsp = get.adjacency(net1, sparse = FALSE)