gpt4 book ai didi

python - 如何从自定义值创建 DataFrame

转载 作者:太空宇宙 更新时间:2023-11-03 14:49:25 25 4
gpt4 key购买 nike

我正在阅读一个文本文件,每一行都有多个值。我正在使用函数解析根据需求解析它们。

def parse(line):
......
......
return line[0],line[2],line[5]

我想创建一个数据框,每一行作为一行,三个返回值作为列

df = pd.DataFrame()

with open('data.txt') as f:
for line in f:
df.append(line(parse(line)))

当我运行上面的代码时,我将所有值作为一列获取。是否有可能以正确的表格格式获取它。

最佳答案

你不应该在一个循环中.appendDataFrame,无论如何这是非常低效的。做这样的事情:

colnames = ['col1','col2','col3'] # or whatever you want
with open('data.txt') as f:
df = pd.DataFrame([parse(l) for l in f], columns=colnames)

请注意,根本问题是 pd.DataFrame.append 需要另一个数据帧,并且它附加了另一个数据帧的数据框。它将列表解释为一堆单行。所以请注意,如果您将列表结构化为具有“行”,它将按预期工作。但是无论如何你都不应该在这里使用 .append:

In [6]: df.append([1,2,3])
Out[6]:
0
0 1
1 2
2 3

In [7]: df = pd.DataFrame()

In [8]: df.append([[1, 2, 3]])
Out[8]:
0 1 2
0 1 2 3

关于python - 如何从自定义值创建 DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46980962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com