【发布时间】:2020-05-06 17:33:49
【问题描述】:
我正在编写 python 脚本,在其中我生成两个不同的 csv 文件,然后使用 pandas 读取这些文件。我可以使用 pandas 读取 file1,但在读取与 file1 格式相同(列名相同)但值不同/相同的 file2 时出现错误。请找到我收到的以下错误和我正在使用的示例代码。
错误:
Traceback (most recent call last):
File "MSReport.py", line 168, in <module>
fail = pd.read_csv('/home/cisapp/msLogFailure.csv', sep=',')
File "/home/cisapp/.local/lib/python3.6/site-packages/pandas/io/parsers.py", line 676, in parser_f
return _read(filepath_or_buffer, kwds)
File "/home/cisapp/.local/lib/python3.6/site-packages/pandas/io/parsers.py", line 448, in _read
parser = TextFileReader(fp_or_buf, **kwds)
File "/home/cisapp/.local/lib/python3.6/site-packages/pandas/io/parsers.py", line 880, in __init__
self._make_engine(self.engine)
File "/home/cisapp/.local/lib/python3.6/site-packages/pandas/io/parsers.py", line 1114, in _make_engine
self._engine = CParserWrapper(self.f, **self.options)
File "/home/cisapp/.local/lib/python3.6/site-packages/pandas/io/parsers.py", line 1891, in __init__
self._reader = parsers.TextReader(src, **kwds)
File "pandas/_libs/parsers.pyx", line 532, in pandas._libs.parsers.TextReader.__cinit__
pandas.errors.EmptyDataError: No columns to parse from file
代码:
df = pd.read_csv(BASE_LOCATION+'/msLog_Success.csv', engine='python')
f_output = df.groupby('MSISDN').last()
#print(df)
print(f_output)
fail = pd.read_csv(BASE_LOCATION+'/msLogFailure.csv', engine='python')
fail = fail['MSISDN']
fail = fail.tolist()
for i in fail:
succ = f_output[f_output.MSISDN != i]
在上面的示例代码中,读取文件df = pd.read_csv(BASE_LOCATION+'/msLog_Success.csv', engine='python') 时没有错误,但是在读取文件fail = pd.read_csv(BASE_LOCATION+'/msLogFailure.csv', engine='python') 时,我遇到了上述错误。请帮忙解决。
注意:我正在使用 python3 运行代码。
【问题讨论】:
-
stackoverflow.com/questions/40193452/… - 这可能会有所帮助
-
检查文件是否存在
msLogFailure可能是错字。也许msLog_Failure? -
请至少包含几行来自 msLogFailure.csv 文件的初始行。还要看看字段之间使用了哪些分隔符。由于您没有传递 sep 参数,因此它们应该只是逗号。
-
@Valdi_Bo 请在下面找到带有 msLogFailure.csv 标题的文件输出。成功和失败文件的格式相同。 MSISDN,REQUEST_ID,STATE1,STATE2,STAETE3,NOTIFICATION 22969000034,OFFLINE_Notification_10.10.46.95_61755e28-f6a1-43de-ae2c-bad308c23e68,ENTERED,IN_PROGRESS,FAILURE,成功发送短信给订阅者
标签: python-3.x pandas