如何在 Pandas DataFrame 中添加一行

Asad Riaz 2023年1月30日 2020年3月28日
  1. 使用 .loc [index] 方法将行添加到带有列表的 Pandas DataFrame 中
  2. 将字典作为行添加到 Pandas DataFrame
  3. Dataframe .append 方法添加一行
如何在 Pandas DataFrame 中添加一行

Pandas 旨在加载一个完全填充的 DataFrame。我们可以在 pandas.DataFrame 中一一添加。这可以通过使用各种方法来完成,例如 .loc,字典,pandas.concat()DataFrame.append()

使用 .loc [index] 方法将行添加到带有列表的 Pandas DataFrame 中

loc[index] 会将新列表作为新行,并将其添加到 pandas.dataframe 的索引 index 中。

考虑以下代码:

# python 3.x
import pandas as pd
# List of Tuples
fruit_list = [ ('Orange', 34, 'Yes' )]
#Create a DataFrame object
df = pd.DataFrame(fruit_list, columns = ['Name' , 'Price', 'Stock'])
#Add new ROW
df.loc[1]=[ 'Mango', 4, 'No' ]
df.loc[2]=[ 'Apple', 14, 'Yes' ]
print(df)

结果:

     Name  Price Stock
0  Orange     34   Yes
1   Mango      4    No
2   Apple     14   Yes

将字典作为行添加到 Pandas DataFrame

append() 可以直接将字典中的键值作为一行,将其添加到 pandas dataframe 中。

考虑以下代码:

# python 3.x
import pandas as pd
# List of Tuples
fruit_list = [ ('Orange', 34, 'Yes' )]
#Create a DataFrame object
df = pd.DataFrame(fruit_list, columns = ['Name' , 'Price', 'Stock'])
#Add new ROW
df=df.append({'Name' : 'Apple' , 'Price' : 23, 'Stock' : 'No'} , ignore_index=True)
df=df.append({'Name' : 'Mango' , 'Price' : 13, 'Stock' : 'Yes'} , ignore_index=True)
print(df)

结果:

     Name  Price Stock
0  Orange     34   Yes
1   Apple     23    No
2   Mango     13   Yes

Dataframe .append 方法添加一行

.append 可用于将其他 DataFrame 的行追加到原始 DataFrame 的末尾,并返回一个新的 DataFrame。来自新 DataFrame 的列(不在原始 datafarme 中)也添加到现有的 DataFrame 中,新的单元格值填充为 NaN

考虑以下代码:

# python 3.x
import pandas as pd
# List of Tuples
fruit_list = [ ('Orange', 34, 'Yes' )]
#Create a DataFrame object
df = pd.DataFrame(fruit_list, columns = ['Name' , 'Price', 'Stock'])
print("Original DataFrame:")
print(df)
print('.............................')
print('.............................')
new_fruit_list = [ ('Apple', 34, 'Yes','small' )]
dfNew=pd.DataFrame(new_fruit_list, columns = ['Name' , 'Price', 'Stock','Type'])
print("Newly Created DataFrame:")
print(dfNew)
print('.............................')
print('.............................')
#append one dataframe to othher
df=df.append(dfNew,ignore_index=True)
print("Copying DataFrame to orignal...")
print(df)

ignore_index = True 将忽略新 DataFrameindex 并从原始 DataFrame 为其分配新索引。

输出:

Original DataFrame:
     Name  Price Stock
0  Orange     34   Yes
.............................
.............................
Newly Created DataFrame:
    Name  Price Stock   Type
0  Apple     34   Yes  small
.............................
.............................
Copying  DataFrame to original..:
     Name  Price Stock   Type
0  Orange     34   Yes    NaN
1   Apple     34   Yes  small

相关文章 - Pandas DataFrame