在Pandas DataFrame中创建一个新列,并将所有单元格设置为默认数组

时间:2018-03-18 14:21:20

标签: python pandas dataframe

我正在尝试构建一个DataFrame,其中一列代表一个向量。这是我遇到问题的代码的一部分:

tweets = pd.DataFrame(train_tweets)
tweets["LangClass"] = "und"
tweets["LangVec"] = pd.Series[[0,0,0,0,0,0,0,0,0,0]]

train_tweets是一个只有两列的传入DataFrame,我想添加第三和第四列,LangClass和LangVec。 LangVec中的值将逐个元素更新。

我通过使用for循环迭代DataFrame并将LangVec的每个值设置为所需的向量来实现它,但这似乎是一种非常缓慢的方法。

感谢您的任何建议!

1 个答案:

答案 0 :(得分:0)

我认为最好的是创建元组列表或列表列表,然后调用DataFrame构造函数:

L = []
for x in iterator:
    first_val = some_code_for_count_val
    second_val =  some_code_for_count_val
    L.append((first_val, second_val)) 

df1 = pd.DataFrame(L, columns = ['LangClass', 'LangVec'])

上次加入原始DataFrame:

df = df.join(df1)