【Pandas】如何在 DataFrame 中插入行

  • Post author:
  • Post category:其他



pd.DataFrame的insert方法是用于插入列的,想插入行的话需要借助numpy.insert

。使用以下基本语法将行插入到 Pandas DataFrame 中的特定位置:

import pandas as pd
import numpy as np
 
#insert row with values [1, 7, 6] into existing DataFrame at index=4
pd.DataFrame(np.insert(df.values, 4, values=[1, 7, 6], axis=0))

以下示例展示了如何在以下 pandas DataFrame 中实际使用此语法:

import pandas as pd
 
#create DataFrame
df = pd.DataFrame({'team': ['A', 'A', 'B', 'B', 'C'],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})
 
#view DataFrame
df
 
        team    assists    rebounds
0    A    5    11
1    A    7    8
2    B    7    10
3    B    9    6
4    C    12    6

示例 1:将值插入 Pandas DataFrame 的第一行

我们可以使用以下语法将一行值插入到 Pandas DataFrame 的第一行:

#insert values into first row of DataFrame
df2 = pd.DataFrame(np.insert(df.values, 0, values=['A', 3, 4], axis=0))
 
#define column names of DataFrame
df2.columns = df.columns
 
#view updated DataFrame
df2
 
    team    assists    rebounds
0    A    3    4
1    A    5    11
2    A    7    8
3    B    7    10
4    B    9    6
5    C    12    6

示例 2:将值插入 Pandas DataFrame 的特定行

我们可以使用以下语法将一行值插入到 Pandas DataFrame 的特定行中:

#insert values into third row (index position=2) of DataFrame
df2 = pd.DataFrame(np.insert(df.values, 2, values=['A', 3, 4], axis=0))
 
#define column names of DataFrame
df2.columns = df.columns
 
#view updated DataFrame
df2
 
        team    assists    rebounds
0    A    5    11
1    A    7    8
2    A    3    4
3    B    7    10
4    B    9    6
5    C    12    6

示例 3:将值插入 Pandas DataFrame 的最后一行

我们可以使用以下语法将一行值插入到 Pandas DataFrame 的最后一行:

#insert values into last row of DataFrame
df2 = pd.DataFrame(np.insert(df.values, len(df.index), values=['A', 3, 4], axis=0))
 
#define column names of DataFrame
df2.columns = df.columns
 
#view updated DataFrame
df2
 
    team    assists    rebounds
0    A    5    11
1    A    7    8
2    B    7    10
3    B    9    6
4    C    12    6
5    A    3    4


————————————————

来源:https://blog.csdn.net/allway2/article/details/121421134