标签: read.csv

尝试将.csv文件读入R时,"不完整的最后一行"警告

我正在尝试将.csv文件读入R并使用此公式:

pheasant<-read.table(file.choose(),header=TRUE,sep=",")
Run Code Online (Sandbox Code Playgroud)

我收到此警告消息:

"incomplete final line found by readTableHeader on 'C:\Documents and Settings..."
Run Code Online (Sandbox Code Playgroud)

有一些我认为可能引起这种警告的事情,但不幸的是我不太了解R自己诊断问题,所以我想我会在这里发帖,希望别人可以为我诊断它!

  • .csv文件最初是一个Excel文件,我保存为.csv格式
  • 该文件包含三列数据
  • 每个数据列具有不同的长度,即每列中存在不同数量的值
  • 我想比较两个列的方法(使用t检验或等效,取决于正常/非正态分布),例如,第1列值和第2列值之间的t检验,然后是t-测试第1列和第3列的值等

任何帮助或建议将非常感谢!

r line-endings read.csv

106
推荐指数
5
解决办法
15万
查看次数

在read.csv中指定colClasses

我试图在R colClasses中的read.csv函数中指定选项.在我的数据中,第一列"时间"基本上是字符向量,而其余列是数字.

data <- read.csv("test.csv", comment.char="" , 
                 colClasses=c(time="character", "numeric"), 
                 strip.white=FALSE)
Run Code Online (Sandbox Code Playgroud)

在上面的命令中,我希望R在"时间"列中读取"字符",其余为数字.虽然命令完成后"data"变量确实具有正确的结果,但R返回了以下警告.我想知道如何解决这些警告?

Warning messages:
 1: In read.table(file = file, header = header, sep = sep, quote = quote,  :
    not all columns named in 'colClasses' exist
 2: In tmp[i[i > 0L]] <- colClasses :
    number of items to replace is not a multiple of replacement length
Run Code Online (Sandbox Code Playgroud)

德里克

csv r read.csv

101
推荐指数
6
解决办法
16万
查看次数

在read.table/read.csv中为colClasses参数指定自定义日期格式

题:

有没有办法在read.table/read.csv中使用colClasses参数时指定Date格式?

(我意识到我可以在导入后进行转换,但是有很多像这样的日期列,在导入步骤中更容易实现)


例:

我有一个.csv格式的日期列%d/%m/%Y.

dataImport <- read.csv("data.csv", colClasses = c("factor","factor","Date"))
Run Code Online (Sandbox Code Playgroud)

这会导致转换错误.例如,15/07/2008成为0015-07-20.


可重现的代码:

data <- 
structure(list(func_loc = structure(c(1L, 2L, 3L, 3L, 3L, 3L, 
3L, 4L, 4L, 5L), .Label = c("3076WAG0003", "3076WAG0004", "3076WAG0007", 
"3076WAG0009", "3076WAG0010"), class = "factor"), order_type = structure(c(3L, 
3L, 1L, 1L, 1L, 1L, 2L, 2L, 3L, 1L), .Label = c("PM01", "PM02", 
"PM03"), class = "factor"), actual_finish = structure(c(4L, 6L, 
1L, 2L, 3L, 7L, 1L, 8L, 1L, 5L), .Label = c("", "11/03/2008", 
"14/08/2008", …
Run Code Online (Sandbox Code Playgroud)

r date read.table read.csv

101
推荐指数
3
解决办法
5万
查看次数

有没有办法使用read.csv读取字符串值而不是R中的文件?

我正在编写一个R包,其中R代码与Java应用程序进行通信.Java应用程序输出CSV格式的字符串,我希望R代码能够直接读取字符串并将其转换为data.frame.

csv file-io r read.csv

76
推荐指数
2
解决办法
2万
查看次数

将csv-dataset导入R但值变为因子

我是R的新手,我无法访问我导入的数据集.我正在使用RStudio并在导入我的csv文件时使用了导入数据集功能,并将该行从控制台窗口粘贴到源窗口.代码如下:

setwd("c:/kalle/R")
stuckey <- read.csv("C:/kalle/R/stuckey.csv")
point <- stuckey$PTS
time <- stuckey$MP
Run Code Online (Sandbox Code Playgroud)

但是,数据不是我所习惯的整数或数字,而是因素,所以当我尝试绘制变量时,我只得到直方图,而不是通常的情节.当检查数据时,它似乎是有序的,只是我无法使用它,因为它是因子形式.

r r-factor read.csv

60
推荐指数
4
解决办法
14万
查看次数

为什么我在读取数据框时会在列名中获得X.

几个月前我问了一个关于这个问题,我认为答案已经解决了我的问题,但是我再次遇到了问题并且解决方案对我不起作用.

我正在导入CSV:

orders <- read.csv("<file_location>", sep=",", header=T, check.names = FALSE)
Run Code Online (Sandbox Code Playgroud)

这是数据帧的结构:

str(orders)

'data.frame':   3331575 obs. of  2 variables:
 $ OrderID  : num  -2034590217 -2034590216 -2031892773 -2031892767 -2021008573 ...
 $ OrderDate: Factor w/ 402 levels "2010-10-01","2010-10-04",..: 263 263 269 268 301 300 300 300 300 300 ...
Run Code Online (Sandbox Code Playgroud)

如果我length在第一列OrderID上运行命令,我会得到:

length(orders$OrderID)
[1] 0
Run Code Online (Sandbox Code Playgroud)

如果我运行length在OrderDate上,它会正确返回:

length(orders$OrderDate)
[1] 3331575
Run Code Online (Sandbox Code Playgroud)

这是复制/粘贴headCSV.

OrderID,OrderDate
-2034590217,2011-10-14
-2034590216,2011-10-14
-2031892773,2011-10-24
-2031892767,2011-10-21
-2021008573,2011-12-08
-2021008572,2011-12-07
-2021008571,2011-12-07
-2021008570,2011-12-07
-2021008569,2011-12-07
Run Code Online (Sandbox Code Playgroud)

现在,如果我重新运行read.csv …

r illegal-characters dataframe read.csv

55
推荐指数
5
解决办法
7万
查看次数

如何检测read.csv的正确编码?

我有这个文件(http://b7hq6v.alterupload.com/en/),我想在R中阅读read.csv.但我无法检测到正确的编码.它似乎是一种UTF-8.我在WindowsXP机器上使用R 2.12.1.任何帮助?

r character-encoding read.csv

51
推荐指数
3
解决办法
4万
查看次数

R中的read.csv()和read.csv2()之间的区别

在R中,read.csv()和read.csv2()之间有什么区别

官方文件说,

在各种欧洲语言环境中,由于逗号字符用作小数点,因此应使用函数read.csv2

这是什么意思.我觉得在表面上没有任何区别.任何人都可以给出一个具体的例子来进一步澄清它.

csv r read.csv

47
推荐指数
1
解决办法
5万
查看次数

read.csv中的多字节字符串无效

我正在尝试导入日语的csv.这段代码:

url <- 'http://www.mof.go.jp/international_policy/reference/itn_transactions_in_securities/week.csv'
x <- read.csv(url, header=FALSE, stringsAsFactors=FALSE)
Run Code Online (Sandbox Code Playgroud)

返回以下错误:

Error in type.convert(data[[i]], as.is = as.is[i], dec = dec, na.strings = character(0L)) : 
invalid multibyte string at '<91>?O<8b>y<82>??<e0><8f>?<94><94><84><94><83><8c>_<96>?@(<8f>T<8e><9f><81>E<8e>w<92><e8><95>@<8a>?x<81>[<83>X<81>j'
Run Code Online (Sandbox Code Playgroud)

我试图改变的编码(Encoding(url) <- 'UTF-8'和也为latin1),并试图除去read.csv参数,但在每种情况下接收相同的"无效多字节字符串"消息.是否有应使用不同的编码,或者是有一些其他的问题吗?

r read.csv

40
推荐指数
3
解决办法
8万
查看次数

read.csv,第一行的标题,跳过第二行

我有一个带有两个标题行的CSV文件,第一行我想成为标题,但第二行我要丢弃.如果我执行以下命令:

data <- read.csv("HK Stocks bbg.csv", header = T, stringsAsFactors = FALSE)
Run Code Online (Sandbox Code Playgroud)

第一行成为标题,文件的第二行成为我数据框的第一行:

  Xaaaaaaaaa       X X.1     Xbbbbbbbbbb     X.2 X.3
1         Date PX_LAST  NA         Date PX_LAST  NA
2   31/12/2002  38.855  NA   31/12/2002  19.547  NA
3   02/01/2003  38.664  NA   02/01/2003  19.547  NA
4   03/01/2003  40.386  NA   03/01/2003  19.547  NA
5   06/01/2003  40.386  NA   06/01/2003  19.609  NA
6   07/01/2003  40.195  NA   07/01/2003  19.609  NA
Run Code Online (Sandbox Code Playgroud)

我想跳过CSV文件的第二行,然后得到

  X1.HK.Equity       X X.1 X2.HK.Equity     X.2 X.3
2   31/12/2002  38.855  NA   31/12/2002  19.547  NA
3   02/01/2003  38.664  NA   02/01/2003 …
Run Code Online (Sandbox Code Playgroud)

r header skip read.csv

29
推荐指数
2
解决办法
4万
查看次数