Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
读取csv,跳过三行,但在data.frame中包含标题名称_R_Csv - Fatal编程技术网

读取csv,跳过三行,但在data.frame中包含标题名称

读取csv,跳过三行,但在data.frame中包含标题名称,r,csv,R,Csv,我想读取csv文件,跳过三行(标题除外),但在data.frame中包含标题名称。我尝试了以下操作,但标题名称错误: > sine = read.csv(file="sine.csv",head=TRUE,sep=",", skip=3, check.names=TRUE) > colnames(sine) [1] "X0" "X0.0" "X0.0.1" "X0.0.2" "None" "X1.0" "X0.0.3" "None.1" "X.." [10

我想读取csv文件,跳过三行(标题除外),但在data.frame中包含标题名称。我尝试了以下操作,但标题名称错误:

> sine = read.csv(file="sine.csv",head=TRUE,sep=",", skip=3, check.names=TRUE)
> colnames(sine)
 [1] "X0"     "X0.0"   "X0.0.1" "X0.0.2" "None"   "X1.0"   "X0.0.3" "None.1" "X.."   
[10] "X0.1"   "X0.2"
当我在不跳过三行的情况下读取数据集时,标题名称是确定的:

> sine = read.csv(file="sine.csv",head=TRUE,sep=",", skip=0, check.names=TRUE)
> colnames(sine)
 [1] "reset"                                                                                    
 [2] "angle"                                                                                    
 [3] "sine"                                                                                     
 [4] "multiStepPredictions.actual"                                                              
 [5] "multiStepPredictions.1"                                                                   
 [6] "anomalyScore"                                                                             
 [7] "multiStepBestPredictions.actual"                                                          
 [8] "multiStepBestPredictions.1"                                                               
 [9] "anomalyLabel"                                                                             
[10] "multiStepBestPredictions.multiStep.errorMetric..altMAPE..steps..1..window.1000.field.sine"
[11] "multiStepBestPredictions.multiStep.errorMetric..aae..steps..1..window.1000.field.sine"    
我做错了什么?

类似这样的事情

foo <- read.csv("http://www.ats.ucla.edu/stat/r/faq/test.csv", header=T)
foo
#    make   model mpg weight price
# 1   amc concord  22   2930  4099
# 2   amc   oacer  17   3350  4749
# 3   amc  spirit  22   2640  3799
# 4 buick century  20   3250  4816
# 5 buick electra  15   4080  7827
colnames(foo)
# [1] "make"   "model"  "mpg"    "weight" "price" 

bar <- read.csv("http://www.ats.ucla.edu/stat/r/faq/test.csv", header=T, skip=3)
bar
#     amc  spirit X22 X2640 X3799
# 1 buick century  20  3250  4816
# 2 buick electra  15  4080  7827
colnames(bar)
# [1] "amc"    "spirit" "X22"    "X2640"  "X3799" 

使用header=TRUE,而不是head。通过链接的答案,解决方案是
read.csv(“sine.csv”,header=FALSE,skip=4,col.names=names(read.csv(“sine.csv”,nrow=0))
。4是为了允许标题行也被跳过。@RichardScriven谢谢你,这终于起作用了expected@RichardScriven请将此作为一个答案发布,以便我可以接受。我评论中的解决方案直接来自链接的答案,因此请前往那里并向上投票MrFlick,因为他是原始海报。他应该为此获得荣誉。谢谢你,我投了更高的票,但@RichardScriven解决方案似乎更简单。我同意Richard的解决方案更优雅。@WakanTanka,请将Richard Scriven的解决方案作为答案发布,然后结束问题。
all_content = readLines("http://www.ats.ucla.edu/stat/r/faq/test.csv")
skip_second = all_content[c(c(-2:-4))]
foo2 = read.csv(textConnection(skip_second), 
                header = TRUE, stringsAsFactors = FALSE)
foo2
#    make   model mpg weight price
# 1 buick century  20   3250  4816
# 2 buick electra  15   4080  7827
colnames(foo2)
# [1] "make"   "model"  "mpg"    "weight" "price"