根据stackoverflow中的问题重新创建pandas数据帧



这是一个试图回答有关熊猫数据帧问题的人提出的问题。考虑一个给定数据集的问题,该数据集只是可视化的(而不是实际的代码(,例如:

numbers letters       dates         all
0        1       a  20-10-2020         NaN
1        2       b  21-10-2020           b
2        3       c  20-11-2020           4
3        4       d  20-10-2021  20-10-2020
4        5       e  10-10-2020        3.14

是否可以在python中快速将其作为数据帧或字典导入?到目前为止,我复制了给定的文本,并通过制作字符串(添加''(等将其转换为数据帧

我认为有两种"解决方案":

  1. 制作一个函数,将文本作为输入,以某种方式将其转换为数据帧
  2. 在文本编辑器中使用一些函数(我使用的是spyder(,它可以为我们完成这个技巧

read_clipboard

您可以选择使用带分隔符的pd.read_clipboard()(例如,如果您在列名中有日期时间字符串或空格,并且列至少由两个空格分隔,则使用pd.read_clipboard('ss+')(:

  • 选择问题上的文本并复制到剪贴板(ctrl+c/command-c(
  • 移动到python shell或笔记本并运行pd.read_clipboard()

请注意,这并不是在所有平台上都能很好地工作。

read_csv+io.StringIO

对于更复杂的格式,请将read_csvio.StringIO:组合使用

data = '''
numbers letters       dates         all
0        1       a  20-10-2020         NaN
1        2       b  21-10-2020           b
2        3       c  20-11-2020           4
3        4       d  20-10-2021  20-10-2020
4        5       e  10-10-2020        3.14
'''
import io
df = pd.read_csv(io.StringIO(data), sep='s+')
df

最新更新