python - 如何在 Pandas 的每一行中插入?

标签 python pandas dataframe

<分区>

基本上,我有一个如下所示的 DataFrame:

  c1 c2 
0  a  b  
1  c  d  
2  e  f  
3  g  h  

我需要将它转换成这个:

  c1 
0  a   
1  b   
2  c   
3  d
4  e
...

我知道如何从第二列中获取所有值:

second_col_items = [df[['1']].iloc[i].item() for i in range(0,len(df.index))] 

但我坚持插入。我需要在循环中插入行,而且,我需要在现有行之间插入新行。有可能吗?

所以,我的问题是:如何遍历列表(在我的例子中是 second_col_items)并将它的值插入到 DataFrame 中的每隔一行?提前致谢!

最佳答案

你可以使用stack()方法:

源DF

In [2]: df
Out[2]:
  c1 c2
0  a  b
1  c  d
2  e  f
3  g  h

堆积

In [3]: df.stack()
Out[3]:
0  c1    a
   c2    b
1  c1    c
   c2    d
2  c1    e
   c2    f
3  c1    g
   c2    h
dtype: object

堆叠 + 重置索引

In [4]: df.stack().reset_index(drop=True)
Out[4]:
0    a
1    b
2    c
3    d
4    e
5    f
6    g
7    h
dtype: object

In [5]:

关于python - 如何在 Pandas 的每一行中插入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43053111/

相关文章:

python - 使用 KDE 在 python 中检测事件窗口

python - 如何在Python中滚动到ScrolledListBox中的选定项目?

python - 使用 flask 的 socketio 扩展从线程发出

python - Altair:如何在条形图中包含没有数据的值的位置

Python/Pandas 表

r - 从现有数据框动态创建新数据框

python - 在不知道各个维度的情况下访问多维数组的每个元素

python - 将 pd.get_dummies 结果转换为 df.str.get_dummies

python - Pandas:有没有办法 1)在数据框中的每一行上方添加两个新的空行,以及 2)用相同的值填充行?

r - 如何将数据框因子列扩展为 R 中每个级别的一列?