现在我正在尝试读取一个具有可变空白分隔符并且也有缺失/空白值的表。我想在 python 中读取表格并生成一个 CSV 文件。我尝试过 NumPy、Pandas 和 CSV 库,但不幸的是,可变空间和缺失数据都让我几乎无法阅读表格。我正在尝试阅读的文件附在此处:goo.gl/z7S2Mo
如果有人能帮助我解决 python 中的解决方案,我将不胜感激
您需要分隔符为两个或更多空格(而不是一个或多个空格)。这是一个解决方案:
import pandas as pd
df = pd.read_csv('infotable.txt',sep='\s{2,}',header=None,engine='python',thousands=',')
Run Code Online (Sandbox Code Playgroud)
结果:
>>> print(df.head())
0 1 2 3 4 5 \
0 ISHARES MORNINGSTAR MID GROWTH ETP 464288307 3892 41700 SH
1 ISHARES S&P MIDCAP 400 GROWTH ETP 464287606 4700 47600 SH
2 BED BATH & BEYOND Common Stock 075896100 870 15000 SH
3 CARBO CERAMICS INC Common Stock 140781105 950 7700 SH
4 CATALYST HEALTH SOLUTIONS IN Common Stock 14888B103 1313 25250 SH
6 7 8 9
0 Sole 41700 0 0
1 Sole 47600 0 0
2 Sole 15000 0 0
3 Sole 7700 0 0
4 Sole 25250 0 0
>>> print(df.dtypes)
0 object
1 object
2 object
3 int64
4 int64
5 object
6 object
7 int64
8 int64
9 int64
dtype: object
Run Code Online (Sandbox Code Playgroud)