类型推断:数据框追加()与航向位置[]

2024-05-06 22:37:16 发布

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

让我们创建一个空的数据帧:

import pandas as pd

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

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

^{pr2}$

我们将自动获取member列的对象数据类型和total列的timedelta64[ns]数据类型。在

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

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

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

不幸的是,在本例中,我们将看到total列的object dtype。为什么?在


Tags: columns数据importdataframepandasdfindexas
1条回答
网友
1楼 · 发布于 2024-05-06 22:37:16

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

相关问题 更多 >