从PurpleAir传感器读取csv文件,并跳过错误位置,其中某些行的末尾包含非标准字符

从PurpleAir传感器读取csv文件,并跳过错误位置,其中某些行的末尾包含非标准字符,r,csv,R,Csv,我有许多PurpleAir传感器,它们每天将一个.csv文件保存到SD卡中,日期用作文件名。我正在尝试从这些每日.csv文件中提取和组合数据 由于某种原因,某些行的最后一个单元格中的数据后跟3个非标准字符,并以这种方式显示在.csv文件中:0.46 read.csv(“filepath”)-正确读取标题行和第一次出现这些非标准字符之前的所有行,然后不加载剩余数据。如果错误在前几行中,函数将给出以下错误: Warning message: In read.table(file = file, h

我有许多PurpleAir传感器,它们每天将一个.csv文件保存到SD卡中,日期用作文件名。我正在尝试从这些每日.csv文件中提取和组合数据

由于某种原因,某些行的最后一个单元格中的数据后跟3个非标准字符,并以这种方式显示在.csv文件中:0.46

read.csv(“filepath”)-正确读取标题行和第一次出现这些非标准字符之前的所有行,然后不加载剩余数据。如果错误在前几行中,函数将给出以下错误:

Warning message:
In read.table(file = file, header = header, sep = sep, quote = quote,  :
  incomplete final line found by readTableHeader on '20200825.csv'
手动打开文件并删除这些额外字符可使R正确读入到下一行,该行显示这些字符(这些字符看起来是随机的,但总是在行尾/最后一个单元格中)

我不需要最后一列中的数据,所以有没有办法告诉函数忽略最后一列而只读取第一列

我尝试了来自多个线程的一些建议,但到目前为止还不能解决这个问题。手动打开文件并删除字符不是一个选项,因为我有很多文件

(需要注意的是,尝试以文本形式读入readLines并修复字符只会导致函数在遇到与read.csv相同的字符时结束)


非常感谢您的支持

在读取csv文件之前,请尝试此命令。我有一个类似的文件,它通过改变语言环境工作。如果不起作用,您可以尝试更改为其他语言环境。

有一个colClasses参数。我尝试使用colClasses忽略最后一列,并将其设置为“NULL”。但是,由于这些字符似乎影响到行尾,因此函数仍会在该行的末尾停止。所以跳过专栏可能不是一个解决方案。谢谢你的建议。我尝试了上面的命令,但不幸没有成功。