所以我试图将csv读入R,如果我使用
data = read.csv("2013_NBAseason.csv", header = T)
我收到错误
Error in read.table(file = file, header = header, sep = sep, quote = quote, :
duplicate 'row.names' are not allowed"
这是因为日期不是唯一的,因为每天都会玩多个游戏。因此,我尝试使用this删除最后一列,但我仍然遇到同样的错误。
问题的原因,我认为在阅读this之后是因为我的上一栏没有标题
因此我做了这个
data = read.csv("2013_NBAseason.csv", header = T,
colClasses=c(rep(NA,7),"NULL"), row.names=NULL)
现在我有一个数据框,我的所有列名都被移过,而一个空列到右边
head(data)
row.names Date Box.Score Away Away_Points Home Home_Points
1 Tue, Oct 30, 2012 Box Score Washington Wizards 84 Cleveland Cavaliers 94
2 Tue, Oct 30, 2012 Box Score Dallas Mavericks 99 Los Angeles Lakers 91
3 Tue, Oct 30, 2012 Box Score Boston Celtics 107 Miami Heat 120
4 Wed, Oct 31, 2012 Box Score Sacramento Kings 87 Chicago Bulls 93
解决此问题的最佳方法是什么,或者避免问题开始?
如果有人告诉我如何添加csv,我可以上传它以便你们可以看到原始数据。
另外,手动更改csv不会起作用,因为这需要外推到更多csvs这样的事情
temp = list.files(pattern="*.csv")
data = do.call("rbind", lapply(temp, read.csv, ...
答案 0 :(得分:0)
为什么不尝试不使用header = T
这样做:
#read data without any row names
data <- read.csv("2013_NBAseason.csv")
#enter string "home_points" to last column. I am assuming it is column 6.
data[1, 6] <- "Home_Points"
#make row 1, your column names
colnames(data) = data[1, ]
以上解决了吗?