将文本 table 转换为 pandas 数据框

Convert text table to pandas dataframe

很多时候,当我尝试在 Whosebug 上回答问题时,问题包含 table,我必须将其转换为 pandas 数据框才能进行处理。例如,在这个问题中:


我的问题是,有没有更快的方法将其转换为数据帧而不是编写:

df=pd.DataFrame({'graph':[1,2,3,4,5,6],
0:['blue','blue','red','red','blue','blue'],
1:['blue','blue','red','blue','red','blue'],
2:['blue','blue','blue','red','blue','blue'],
3:['blue','blue','blue','red','red','blue'],
4:['blue','blue','red','blue','red','blue']})

鉴于我可以复制文本:

graph   0       1       2       3       4
1       blue    blue    blue    blue    blue
2       blue    blue    blue    blue    blue
3       blue    red     blue    blue    red
4       red     blue    red     red     blue
5       red     red     blue    red     red
6       blue    blue    blue    blue    blue

确保所需的数据集在剪贴板中并使用pd.read_clipboard()方法。

一步一步:

  1. 标记想要的数据集
  2. Ctrl+C(对于 MS Windows)
  3. 执行:df = pd.read_clipboard()

In [40]: df = pd.read_clipboard()

In [41]: df
Out[41]:
   graph     0     1     2     3     4
0      1  blue  blue  blue  blue  blue
1      2  blue  blue  blue  blue  blue
2      3  blue   red  blue  blue   red
3      4   red  blue   red   red  blue
4      5   red   red  blue   red   red
5      6  blue  blue  blue  blue  blue