gpt4 book ai didi

python - Pandas 随机分配列名

转载 作者:太空宇宙 更新时间:2023-11-04 11:07:01 27 4
gpt4 key购买 nike

我从 xml 文件中提取了一些日期和温度值,并想用它们制作一个数据框。因此,在一些循环之后,我定义了变量 temperaturedate 并将它们的值附加到循环外的列表中(placeholder)。后来我从他们那里制作了一个DataFrame,并在制作DataFrame时直接分配了列名。但我重新意识到,每次我运行我的代码时,列名都会随机分配正确或错误。这是我的代码:

placeholder=[]
for timeserie in timeseries:
date = re.findall('<entryisIntraday\D*(\d*.\d*.\d*)', timeserie)
temperature = re.findall('<value>(.*)<\/value>', timeserie)[0]
placeholder.append([date, temperature])
print(placeholder)
df = pd.DataFrame(placeholder, columns= {"DATE", "TEMP"})
print(df)

有时运行代码后的结果是这样的:

[['2019-10-29', '4.4'], ['2019-10-30', '3.6'], ['2019-10-31', '2.1'] ...
TEMP DATE
0 2019-10-29 4.4
1 2019-10-30 3.6
2 2019-10-31 2.1

有时像这样:

[['2019-10-29', '4.4'], ['2019-10-30', '3.6'], ['2019-10-31', '2.1'], ...
DATE TEMP
0 2019-10-29 4.4
1 2019-10-30 3.6
2 2019-10-31 2.1

我在构建 DataFrame 后分配列名时没有遇到这个问题:

df = pd.DataFrame(placeholder)
df=df.rename(columns= {0:"DATE",1:"TEMP"})

我该如何解决这个问题?

最佳答案

DataFrame 参数构造函数应该是一个 list,而不是一个 set:

df = pd.DataFrame(placeholder, columns = ["DATE", "TEMP"])

关于python - Pandas 随机分配列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59192270/

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