gpt4 book ai didi

python - Pandas 数据帧python中的多行

转载 作者:行者123 更新时间:2023-12-05 00:50:54 24 4
gpt4 key购买 nike

对于具有多行的 Pandas DataFrame 中的一列,我想创建一个新列,该列具有指定数量的行,这些行形成前一列的行的子级别。我尝试这样做是为了创建一个包含值范围的大型数据矩阵,作为稍后模型的输入。

例如,我有一个小的 DataFrame,如下所示:

df:
A
1 1
2 2
3 3
. ..

对于这个 DataFrame,我想在 DataFrame 的“A”列中每行添加 3 行,形成一个名为“B”的新列。结果应该是这样的:
df:
A B
1 1 1
2 1 2
3 1 3
4 2 1
5 2 2
6 2 3
7 3 1
8 3 2
9 3 3
. .. ..

我尝试了各种事情,其中​​列表理解与 if 相结合。语句并使用某些东西来迭代 DataFrame 中的行,例如 iterrows()随后“追加”新行对我来说似乎是最合乎逻辑的,但是我无法完成。特别是“A”列的行的重复。

有谁知道如何做到这一点?

任何建议表示赞赏,非常感谢提前

最佳答案

我想你需要 numpy.repeat numpy.tile DataFrame构造函数:

df = pd.DataFrame({'A':np.repeat(df['A'].values, 3), 
'B':np.tile(df['A'].values, 3)})
print (df)
A B
0 1 1
1 1 2
2 1 3
3 2 1
4 2 2
5 2 3
6 3 1
7 3 2
8 3 3

关于python - Pandas 数据帧python中的多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45152427/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com