如何使用 pandas 复制一行(列)的元素并粘贴到 csv 中的第 1 行(另一列)?

我正在使用pandas制作一个csv文件,其中一些列已经有了数据。例如,它看起来像这样


col1   col2

   1     2

   3     4

   5     6

   7     8

我们调用 n - 列的行位置,


如果 n=1, ,n(col1) =1n(col2) =2


如果 n=2, ,n(col1) =3n(col2) =4


等。


现在我想添加col3和col4,它看起来像这样


col1   col2   col3   col4

   1     2

   3     4

   5     6

   7     8

我想在 n=2 时将 col1 的值写入 col3 与 , 将 n=2 时将 col2 的值写入 col4,依此类推。它看起来像这样n(col3)=1n(col4)=1


col1   col2   col3   col4

    1     2      3      4

    3     4      5      6  

    5     6      7      8

    7     8      9     10

我正在用python编写一个不完整的代码


import pandas

result = pandas.read_csv('csvfile.csv')

n = 0

for n in range (0,25):

    a = result.loc[n, 'col1']

请帮忙。谢谢。


慕侠2389804
浏览 197回答 1
1回答

手掌心

使用 DataFrame.shift,但缺少最后一行值:df[['col3','col4']] = df[['col1','col2']].shift(-1)print (df)   col1  col2  col3  col40     1     2   3.0   4.01     3     4   5.0   6.02     5     6   7.0   8.03     7     8   NaN   NaN如果要替换它们,例如:0df[['col3','col4']] = df[['col1','col2']].shift(-1, fill_value=0)print (df)   col1  col2  col3  col40     1     2     3     41     3     4     5     62     5     6     7     83     7     8     0     0
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python