使用 read_clipboard 读取时索引列为空

问题描述 投票:0回答:1

大家好:我正在尝试从软件读取数据:它会生成这样的表格:

Data1   |   Data2  | Data3
Data4   |   Data5  | Data6
Data7   |   Data8  | Data9

我可以将它复制到剪贴板,并且数据值用表格符号分隔,所以我认为它可以被pandas读取。 如果我这样做

ExportedData=pd.read_clipboard(names = ["ColA","ColB","ColC"], header=None)

ExportedData=pd.read_clipboard(names = ["ColA","ColB","ColC"], header=None, index_col=[0])

甚至

ExportedData=pd.read_clipboard(names = ["ColA","ColB","ColC"], header=None, index_col=[])

我有相同的结果:列索引显示为空:

索引 ColA ColB ColC
0 数据1 数据2 数据3
1 数据4 数据5 数据6
2 数据7 数据8 数据9

但是如果我这样做

ExportedData=pd.read_clipboard(names = ["ColA","ColB","ColC"], header=None, index_col=False)

我拥有的是:

索引 ColA ColB ColC
0 0 数据1 数据2
1 1 数据4 数据5
2 2 数据7 数据8

我想知道如何获得索引列:

索引 ColA ColB ColC
0 数据1 数据2 数据3
1 数据4 数据5 数据6
2 数据7 数据8 数据9
pandas dataframe indexing clipboard
1个回答
0
投票

您需要使用正则表达式设置分隔符:

ExportedData = pd.read_clipboard(names=["ColA","ColB","ColC"],
                                 header=None, sep=r'\s*\|\s*')

如果你真的有表格:

ExportedData = pd.read_clipboard(names=["ColA","ColB","ColC"],
                                 header=None, sep=r'\t')

输出:

    ColA   ColB   ColC
0  Data1  Data2  Data3
1  Data4  Data5  Data6
2  Data7  Data8  Data9
© www.soinside.com 2019 - 2024. All rights reserved.