删除逗号分隔文件中具有多个列数的行

Jas*_*hah 0 r

我在逗号分隔文件中有行/观察,理想情况下应该有55列.但是有一些字段,例如地址中有一个额外的逗号.比如曼哈顿,纽约应该是曼哈顿,纽约的一个领域,但是当我读取增加列数的文件时,我得到曼哈顿纽约的两个字段.

无论如何我可以使用R或任何工具(如Delimit或Excel)删除此类观察结果吗?

我最终想把这个文件加载到R中进行分析.

我同意我的问题类似于删除制表符分隔文件中的行或行,按行或行中的单元格数,但我在寻找R中的解决方案

输入

Name, Address, DOB
John, Manhattan, New York, 2/8/1990
Jacob, Arizona, 9/10/2012
Smith, New Jersey, 8/10/2016
Run Code Online (Sandbox Code Playgroud)

预期产出

Name, Address, DOB
Jacob, Arizona, 9/10/2012
Smith, New Jersey, 8/10/2016
Run Code Online (Sandbox Code Playgroud)

sha*_*yaa 5

一般来说,我不主张做你想做的事,就是扔掉记录.尽管如此,如果这是你想要做的,你可以这样做.

假设您的数据作为文本存储在一个名为的文件中foo,您可以使用该count.fields函数来计算由于存在而定义的字段sep.然后从readLines函数中省略它们.

text <-
"Name, Address, DOB
John, Manhattan, New York, 2/8/1990
Jacob, Arizona, 9/10/2012
Smith, New Jersey, 8/10/2016
"
cat(text, file = "foo", sep = ",")
fields <- count.fields("foo", sep = ",")
readLines("foo")[fields == 3]
Run Code Online (Sandbox Code Playgroud)