Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 忽略数据帧CSVread中的第一行_Python_Pandas - Fatal编程技术网

Python 忽略数据帧CSVread中的第一行

Python 忽略数据帧CSVread中的第一行,python,pandas,Python,Pandas,我目前正在尝试构建一个相当简单的脚本,它将比较CSV中的两个数据帧,并执行内部合并以删除重复项。现在我注意到我的一个CSV看起来像这样: Row [0]: One column Row [1:]: 2+ columns 0 1,2,3 4,5,6 7,8,9 现在,当我试图通过pandas.csv_read(…)导入它时,我得到以下错误 Traceback (most recent call last): File "<stdin>", line 1, in <modul

我目前正在尝试构建一个相当简单的脚本,它将比较CSV中的两个数据帧,并执行内部合并以删除重复项。现在我注意到我的一个CSV看起来像这样:

Row [0]: One column
Row [1:]: 2+ columns
0
1,2,3
4,5,6
7,8,9
现在,当我试图通过pandas.csv_read(…)导入它时,我得到以下错误

Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/pandas-0.10.0-py2.7-macosx-10.5-i386.egg/pandas/io/parsers.py", line 391, in parser_f
return _read(filepath_or_buffer, kwds)
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/pandas-0.10.0-py2.7-macosx-10.5-i386.egg/pandas/io/parsers.py", line 207, in _read
return parser.read()
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/pandas-0.10.0-py2.7-macosx-10.5-i386.egg/pandas/io/parsers.py", line 624, in read
ret = self._engine.read(nrows)
File "/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/pandas-0.10.0-py2.7-macosx-10.5-i386.egg/pandas/io/parsers.py", line 945, in read
data = self._reader.read(nrows)
File "parser.pyx", line 634, in pandas._parser.TextReader.read (pandas/src/parser.c:5795)
File "parser.pyx", line 656, in pandas._parser.TextReader._read_low_memory (pandas/src/parser.c:6015)
File "parser.pyx", line 734, in pandas._parser.TextReader._read_rows (pandas/src/parser.c:6892)
File "parser.pyx", line 791, in pandas._parser.TextReader._convert_column_data (pandas/src/parser.c:7596)
File "parser.pyx", line 1015, in pandas._parser.TextReader._get_column_name (pandas/src/parser.c:10425)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site packages/pandas-0.10.0-py2.7-macosx-10.5-i386.egg/pandas/io/parsers.py”,第391行,在parser_f中
返回读取(文件路径或缓冲区,kwds)
文件“/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site packages/pandas-0.10.0-py2.7-macosx-10.5-i386.egg/pandas/io/parsers.py”,第207行,已读
返回parser.read()
文件“/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site packages/pandas-0.10.0-py2.7-macosx-10.5-i386.egg/pandas/io/parsers.py”,第624行,已读
ret=自身。\发动机读取(nrows)
文件“/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site packages/pandas-0.10.0-py2.7-macosx-10.5-i386.egg/pandas/io/parsers.py”,第945行,已读
数据=自身。\读卡器读取(nrows)
pandas中的文件“parser.pyx”,第634行。\u parser.textleader.read(pandas/src/parser.c:5795)
pandas._parser.TextReader._read_low_内存中的文件“parser.pyx”,第656行(pandas/src/parser.c:6015)
文件“parser.pyx”,第734行,pandas.\u parser.textleader.\u read\u行(pandas/src/parser.c:6892)
pandas.\u parser.TextReader.\u convert\u column\u data(pandas/src/parser.c:7596)中第791行的文件“parser.pyx”
文件“parser.pyx”,第1015行,在pandas.\u parser.TextReader.\u get\u column\u name(pandas/src/parser.c:10425)中
我假设这与第一行有关,因为当我删除它时,问题就消失了。我怎样才能忽略这些错误,而用空值填充其余的错误呢

最好的,
奥利弗

我认为正确的答案是,总的来说,你不能<代码>csv_read要求输入格式正确。当您超出预期输入时,每个人都可能希望有不同的行为。例如,如果您的输入如下所示:

Row [0]: One column
Row [1:]: 2+ columns
0
1,2,3
4,5,6
7,8,9
一个人可能希望忽略第一行,另一个人可能希望为第一行的两个缺失列填入NA值,另一个人可能希望只读取第一列(推断第一行只有一列,并忽略后续行上的多余值)。这三种解决方案都是合理的,因此最好让用户自行清理数据


也就是说,如果你发布更多关于你试图清理的输入类型的信息,我相信这里会有人帮助你。

它的
pandas.read\u csv
然后你传递它
skiprows=1
跳过第一行,但是有没有办法自动完成呢?也许有人有一个需要跳过前两行的文件。你可以用一个变量跳过它(如果没有更多信息,很难说如何自动完成)。。。