我要加载多个文件,并希望将它们连接成一个数据框。我正在尝试使用textConnection,但运行速度非常慢。这是我将数据加载到R:
时的数据"1995200008,10,1995,5190.61,73300"
"1995200010,1,1995,6776.44,42652"
"1995200011,11,1995,2315.83,4169"
"1995200014,6,1995,9846.79,2113"
"1995200017,8,1995,3978.93,2449"
"1995200018,6,1995,3582.69,2449"
"1995200022,7,1995,10409.18,2859"
我不能使用read.csv,因为它使用库从Hadoop中提取数据。双引号在数据中。
以下是我正在使用的代码:
tmp <- hdfs.read.text.file(filename)
tmp1 <- read.table(textConnection(tmp), sep = ",")
有没有人知道哪种方式会跑得更快?
答案 0 :(得分:0)
hdfs.read.text.file
返回一个字符向量。
您可以直接将数组传递给read.table函数,而无需创建textConnection
。尝试以下代码,
charV <- hdfs.read.text.file(filename)
df <- read.table(text = charV, sep = ",", header = TRUE)