python - 在 Pandas 数据框列中添加多个常量值

标签 python pandas dataframe numpy series

我想知道如何将多个不同长度的常量值添加到数据框列中。我知道我们可以像这样向数据框列“A”添加一个常量值(例如:5):

df['A'] = 5

但我希望数据框类似于下表。如您所见,我需要三个 5、两个 10、六个 30 和一个 100。你怎么能对大约 10000 行具有一定数量的值(不是随机的)执行此操作,每个值都具有用户定义的频率。

<表类="s-表"> <头> 索引 A <正文> 1 5 2 5 3 5 4 10 5 10 6 30 7 30 8 30 9 30 10 30 11 30 12 100

最佳答案

您可以将 numpy.repeat 与 DataFrame 构造函数一起使用:

vals = [5,10,30,100]
reps = [3,2,6,1]
df = pd.DataFrame({'A': np.repeat(vals, reps)})
df.index+=1

输出:

      A
1     5
2     5
3     5
4    10
5    10
6    30
7    30
8    30
9    30
10   30
11   30
12  100

关于python - 在 Pandas 数据框列中添加多个常量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69175743/

相关文章:

python - 手动读取 CNTK 中的 Minibacth 内容

python - 加速 Pandas 稀疏数据帧的加载

r - 从 data.frame 中提取列比从矩阵中提取列更快 - 为什么?

python - 如何在 Python 中编写有效的类装饰器?

python - 使用我的 Python 程序

python - 将字典合并到数据框 get_dummies

python - 在 Numpy 或 Pandas 中的每一行之后插入相似行(只有一列发生变化)的有效方法

python - pandas dataframe 删除频率较低的行

scala - 如何在向量列中找到最大值的索引?

Python 将单个字典项移动(弹出)到新字典中