pandas添加行的两种实现方式

来自:网络
时间:2024-08-28
阅读:

方法1(df.append())

import pandas as pd
 
# 创建一个空的DataFrame
df = pd.DataFrame(columns=['Column1', 'Column2'])
 
# 新增一行数据
data = {'Column1': 'Value1', 'Column2': 'Value2'}
df = df.append(data, ignore_index=True)
print(df)

raw_data ={"Column1":"adafafa","Column2":"123123"}
df = df.append(raw_data,ignore_index=True)
df 

可以看到这个pandas的添加行的方式和list也是一样,都是使用append函数,但是有一个问题,就是这个append是要返回值的, 这个倒是和list不同,还有一个区别是就是这个ignore_index的参数,必须得有,否则会报错

pandas添加行的两种实现方式

比如下面的例子就会报错

import pandas as pd
 
# 创建一个空的DataFrame
df = pd.DataFrame(columns=['Column1', 'Column2'])
 
# 新增一行数据
data = {'Column1': 'Value1', 'Column2': 'Value2'}
df = df.append(data, ignore_index=True)
print(df)

raw_data ={"Column1":"adafafa","Column2":"123123"}
df = df.append(raw_data,ignore_index=False)
df 

但是值得注意的是,df.append()并非只能添加字典形式的数据,而是能添加dataframe的形式。

但是需要注意这个index的区别,如果设置了ignore_index=True的话,这个index的下标就会被覆盖,而且是从0开始的计数,所以如果要求保留index信息的话,可以选择使用df.concat()

方法2(df.concat())

import pandas as pd
 
# 创建一个空的DataFrame
df1 = pd.DataFrame(columns=['Column1', 'Column2'])
 
# 新增一行数据
df2 = pd.DataFrame(data={'Column1': 'Value1', 'Column2': 'Value2'},index=["AAA"])
df3 = pd.DataFrame(data={'Column1': 'GSgasgag', 'Column2': 'bafgdgha'},index=["BBB"])
df = pd.concat([df1,df2])
print(df)

df = pd.concat([df,df3])
df 

pandas添加行的两种实现方式

可以看到,这个结果就是很好的

返回顶部
顶部