如何从杂乱的字符串中提取数据帧?

2024-05-16 06:41:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数据集,它在发布之前已经被修改过了。然而,其附件代码尚未修订,现在面临这一错误。 代码需要一个数据框来解释255个家庭的功能,尽管该项目只是一个混乱的字符串,没有精确的分隔符来转换它

我在这个picture中显示了错误、新数据集中项目的类型和字符串的内容。(突出显示的是每套列前面都有“\n\n”

此外,我想到的是提取数据帧,但没有起作用:

string=mdi.metadata.homes['home']
home2=string.split("\n\n")[0]
from io import StringIO
StringData = StringIO(home2)
df = pd.read_csv(StringData, sep ="\t")

这只是字符串首字母中前4列的前4行:

homeid install_type     location  residents         starttime  \\\n0        47     standard    Edinburgh          2  10/08/2016 00:00   \n1        59     standard    Edinburgh          2  06/10/2016 00:00   \n2        61     enhanced    Edinburgh          2  06/10/2016 00:00   \n3        62     enhanced    Edinburgh          2  26/08/2016 00:00   \n4        64     standard    Edinburgh          4  20/10/2016 00:00  

Tags: 数据项目字符串代码功能附件string家庭
1条回答
网友
1楼 · 发布于 2024-05-16 06:41:10

我相信有更好的方法,但我使用这个技巧从格式不好的问题中获取数据帧

打印字符串(让print处理返回字符等问题,'\n'),然后选择all并复制它。然后使用:

df = pd.read_clipboard("\s\s+")

有时我不得不手动调整几个列名之间的间距,以使其正常工作,但效果不合理

相关问题 更多 >