我需要将使用 SQL Server 2005 创建的文件导入 R。我需要 R 来读取当前格式,否则我需要为我的数据提供者提供一种方法,以便我的同事可以以 R 可以读取的格式保存,其中 csv 是第一选择。
一位同事向我发送了很多用 MS SQL Server 2005 保存在服务器上的大文件。我在 Windows 7 上使用 R 2.15.1。
使用 RI 正在尝试使用标准技术读取文件。虽然每个文件都有一个 csv 扩展名,但当我转到 Excel 或写字板并保存时,我看到它是 Unicode 文本。记事本指示编码为 Unicode。现在我必须在 Excel 中做一些事情(例如文本到列。每一行完全在 A 列中)并最终保存为真正的 csv 文件,然后我才能将其读入 R 然后使用它。
有没有办法从 R 中解决这个问题?我也愿意接受简单的 SQL Server 2005 解决方案。
我在 R 中尝试了以下操作。
testDF = read.table("Info06.csv", header = TRUE, sep = ",")
testDF2 = iconv(x = testDF, from = "Unicode", to = "")
Error in iconv(x = testDF, from = "Unicode", to = "") :
unsupported conversion from 'Unicode' to '' in codepage 1252
# The next line did not produce an error message
testDF3 = iconv(x = testDF, from = "UTF-8" , to = "")
testDF3[1:6, 1:3]
Error in testDF3[1:6, 1:3] : incorrect number of dimensions
# The next line did not produce an error message
testDF4 = iconv(x = testDF, from = "macroman" , to = "")
testDF4[1:6, 1:3]
Error in testDF4[1:6, 1:3] : incorrect number of dimensions
Encoding(testDF3)
[1] "unknown"
Encoding(testDF4)
[1] "unknown"
这是写字板的前几行
Date,StockID,Price,MktCap,ADV,SectorID,Days,A1,std1,std2
2006-01-03 00:00:00.000,@Stock1 ,2.53,467108197.38,567381.144444444,4,133.14486997089,-0.0162107939626307,0.0346283580367959,0.0126471695454834
2006-01-03 00:00:00.000,@Stock2 ,1.3275,829803070.531114,6134778.93292,5,124.632223896458,0.071513138376339,0.0410694546850102,0.0172091268025929