将行追加到空的DataFrame将dtype从int转换为object

时间:2018-09-12 04:31:34

标签: python pandas

我正在尝试向数据帧中添加一个由整数组成的系列,但是数据帧中的项目被转换为对象,而不是整数。

如何将dtype保持为数据框中的项目的int类型。

以下是一些演示代码:

>>> import pandas as pd
>>> df = pd.DataFrame(columns =['a','b','c'],  dtype=int)
>>> row = pd.Series(0,['a','b','c'],dtype=int)
>>> row = row.rename('row')
>>> print(row)
a    0
b    0
c    0
Name: row, dtype: int64
>>> df.append(row)['a']
row    0
Name: a, dtype: object
>>> 

1 个答案:

答案 0 :(得分:1)

dtype=int在没有数据的情况下初始化数据帧时显然不会停留。

工作环境

df = pd.DataFrame(columns=['a','b','c']).astype(int)
row = pd.Series(0, ['a', 'b', 'c'], dtype=int, name='row')

df.append(row).dtypes

a    int64
b    int64
c    int64
dtype: object