gpt4 book ai didi

python - 类型推断 : df. append() 与 df.loc[]

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

让我们创建一个空的 DataFrame:

import pandas as pd

df = pd.DataFrame(columns=['member', 'total'])

如果我们使用 df.append() 将数据添加到 df:

df = df.append({'member': 'some_string', 'total': pd.Timedelta(...)}, ignore_index=True)

我们将自动获取 member 列的 object dtype 和 total 列的 timedelta64[ns] dtype。

现在让我们在 DataFrame 创建期间指定一个索引,并使用 df.loc[] 添加数据:

df = pd.DataFrame(index=some_index, columns=['member', 'total'])

df.loc[index_label] = {'member': 'some_string', 'total': pd.Timedelta(...)}

不幸的是,在这种情况下,我们将看到 total 列的对象数据类型。为什么?

最佳答案

df.append 创建一个全新的 DataFrame,因此它可以重新计算所有列的最佳类型。 df.loc 修改现有的 DataFrame,因此它不会这样做。 (只有在需要使类型不那么具体时,它才会更改类型,例如,如果将字符串插入数字列,则将其转换为对象数据类型。)

关于python - 类型推断 : df. append() 与 df.loc[],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34753873/

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