导入R(†)

时间:2019-02-04 18:20:29

标签: r csv

我已使用read.csv将文件导入R。当我查看数据框时,字符串的外观与我导入的CSV文件中的字符串相同。引用时,数据框中的某些字符串行为不正确。

当我随后写.csv来导出文件时,一个奇怪的字符出现在字符串中的空格中,这些空格在被引用时表现不正常。看起来像这样:†

我尝试在write.csv函数中指定fileEncoding,但是由于这些字符串在导入后无法进行分析,因此出现问题的原因是如何导入而不是导出。

这就是我读取数据的方式以及导出之前的操作。

df <- read.csv("data.csv")

df = subset(df, select = - 
c(Email,First_Name,Last_Name,X.removed,X.removed.1, X.removed.2))

write.csv(df, file ="data.csv",fileEncoding = "UTF-16LE")

当我尝试不成功地引用字符串时,这是我使用的代码。

df$Other <- sub("^$", "0", df$Other)

df$Other <- sub("Other Answer", "1", df$Other)

df$Other <- as.numeric(df$Other)

然后我收到一条错误消息,指出NA是由强制引入的,因为子功能无法找到“其他答案”。我最终使用以下代码成功地将df $ Other设为二进制数值变量。

df$Other[df$Other!="0"] <- 1

还有另一列包含相同字符串的列,该字符串仍然是一个因子(并且不会更改为二进制和数字)。当我使用write.csv导出数据帧时,该已分解列的导出CSV文件中“ Other”和“ Answer”之间的空格中会出现一个奇怪的字符。上面写着“其他†答案”。

这对于其他两列也是如此,并且字符不仅出现在字符串的第一个空格中,而且还出现在字符串的第二个空格中,而不是出现在该字符串的第一个空格中。其他字符串导入和导出都很好。

我希望导出的CSV文件在三个不同的字符串中都包含空格,其中一个空格(每个空格)已由†替换。我还期望这些字符串以空格而不是†导入,以便能够引用它们以使用子函数。

示例:用“其他答案”代替“其他†答案”,用“其他答案”代替“其他答案”,用“在这里评论”代替“在这里评论”。

我很想知道为什么会这样,但是只要知道如何解决它,这样字符串就可以像我期望的那样导出到CSV了。我已经找到了子功能的解决方法。

0 个答案:

没有答案