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

2024-01-04

这是一个试图回答有关 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() https://pandas.pydata.org/docs/reference/api/pandas.read_clipboard.html可选地带有分隔符(例如pd.read_clipboard('\s\s+')如果列名称中有日期时间字符串或空格,并且列之间至少有两个空格分隔):

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

请注意,这并不适用于所有平台。

read_csv + io.StringIO

对于更复杂的格式,请组合read_csv https://pandas.pydata.org/docs/reference/api/pandas.read_csv.html结合io.StringIO https://docs.python.org/3/library/io.html#io.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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据 stackoverflow 中的问题重新创建 pandas 数据框 的相关文章

随机推荐