当列具有不同的数据类型时,向pandas数据框添加新行?

时间:2018-04-09 00:22:32

标签: python pandas

我有一个2列的pandas数据框,用df = pd.DataFrame([], columns = ["A", "B"])初始化。列A必须是float类型,列B类型为datetime.datetime。我需要添加我的第一个值(即新行),但我似乎无法弄清楚如何做到这一点。我无法new_row = [x, y]然后追加它,因为xy的类型不同。我应该如何添加这些行?谢谢。

1 个答案:

答案 0 :(得分:1)

import pandas as pd
from numpy.random import rand

选项1 - 将新行设为DF并附加到上一个:

df = pd.DataFrame([], columns = ["A", "B"])
T=pd.datetime(2000,1,1)
df2=pd.DataFrame( columns = ["A", "B"],data=[[rand(),T]])
df=df.append(df2)

或者,选项2 - 创建空DF然后索引:

df = pd.DataFrame(index=range(5), columns = ["A", "B"])
T=pd.datetime(2000,1,1)
df.iloc[0,:]=[rand(),T]