python - 将一个系列分配给数据帧的所有列(按列)?

标签 python pandas

我有一个数据框,以及与 df 具有相同垂直尺寸的系列,我想分配 该系列到 DataFrame 的所有列。 这样做的自然原因是什么?

例如

df = pd.DataFrame([[1, 2 ], [3, 4], [5 , 6]] ) 
ser = pd.Series([1, 2, 3 ])

我希望“df”的所有列都等于“ser”。

PS相关:

最佳答案

使用to_framereindex :

a = ser.to_frame().reindex(columns=df.columns, method='ffill')
print (a)
   0  1
0  1  1
1  2  2
2  3  3

但似乎更容易的是 comment 的解决方案,如果需要与原始真实数据相同的顺序列,则添加了 columns 参数:

df = pd.DataFrame({c:ser for c in df.columns}, columns=df.columns)

关于python - 将一个系列分配给数据帧的所有列(按列)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46774161/

相关文章:

python - 未使用 .xs() 和 .get_level_values() 在切片上设置值

Python header ——$(美元符号)封装的目的是什么?

python - 根据特定列或列中是否存在空值从 DataFrame 中选择行

python - 比较数据框中的重复行以确定通过/失败

python - 操作 pivot_table 中的多索引列

python - 无法将 Bokeh 图嵌入到 Flask 应用程序中

python - 输出 : functions vs. 分配给变量的函数

python - 如果列不同于 NaN 或 0,则 np.any() 替代

python - Pandas:高效插入大量行

python - 用于复制一行以填充 DataFrame 的 Pandas