python - 如何将 ndarray 值附加到特定列的数据帧行中?

标签 python pandas dataframe numpy-ndarray

我有一个像这样返回 ndarray 的函数

[0 1 0 0 0 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0] 

现在,我有一个包含 A、B、C、...、Z 列的数据框 df;但是我们得到的数组只有 20 个值。因此,我想找到一种方法,对于作为输出获得的每个数组,我都能够像这样将其存储在 df 中(A、B、W、X、Y、Z 将被保留空白):

__| A | B | C | D | E | F | ...
0 |nan|nan| 0 | 1 | 0 | 0 | ...
1 |nan|nan| 1 | 1 | 0 | 1 | ...
.
. 
.

最佳答案

我已经为您的问题创建了一个小例子。希望对你有帮助

import pandas as pd
import numpy as np

df = pd.DataFrame(np.nan, index=[0, 1, 2, 3], columns=['A', 'B', 'C'])
data = np.array([[0, 1],
                   [1, 1]])
print(df)
# df[['B', 'C']] = pd.DataFrame.from_records(data)
df[['B', 'C']] = pd.DataFrame(data)

print(df)

输出:

    A   B   C
0 NaN NaN NaN
1 NaN NaN NaN
2 NaN NaN NaN
3 NaN NaN NaN

    A    B    C
0 NaN  0.0  1.0
1 NaN  1.0  1.0
2 NaN  NaN  NaN
3 NaN  NaN  NaN

关于python - 如何将 ndarray 值附加到特定列的数据帧行中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53932155/

相关文章:

python - 删除所有列名中的前缀

python - 有效地重新排序列表/配对的数据帧

python - 如何根据数据框的 NAN 百分比删除列?

python - 列表中此列表中的 [1] 的用途是什么?

python - 使用python socket搭建ftp服务器

python - 'pyuic5' 不被识别为内部或外部命令

python - 将按结果分组保存到单独的 CSV 文件中

python - pandas groupby ffill bfill 需要中间 groupby 吗?

python - Pandas 时间子集时间序列 - 特定时间以上的日期

python - 如何仅提取多行字符串的第一行