DataFrame添加数据

添加数据

1、给数据框最后添加一列

例如给如下数组添加一列:
在这里插入长图片描述
数组名为df1,给df1加score一列:

df1['score']=[80,98,67,90]

可以直接命名列名,赋值数据即可。

注意:增加列的元素个数要跟原数据列的个数一样
2、在具体某个位置插入一列可以用 insert 的方法

df1.insert(iloc,column,value)

iloc:要插入的位置
colunm:列名
value:值

例如:在列索引为2的位置,插入birth一列

df1.insert(2,'birth',['1995-07-01','1998-09-04','1993-11-03','1994-04-17'])

结果:
在这里插入图片描述

3、单独拿出来列名进行添加列操作(reindex重新构建索引)

思路:①将列索引拿出来②插入新的列③重新构建索引④给新列赋值

col_name=df1.columns.tolist() # 将数据框的列名全部提取出来存放在列表里
print(col_name)  #输出:['name', 'gender', 'birth', 'age', 'score']
col_name.insert(2,'city') # 在列索引为2的位置插入一列,列名为:city,刚插入时不会有值,整列都是NaN
print(col_name)  #输出:['name', 'gender', 'city', 'birth', 'age', 'score']
df1=df1.reindex(columns=col_name) # DataFrame.reindex() 对原索引重新构建索引值
print(df1)
'''

     name gender  city       birth  age  score
0    Show      M   NaN  1995-07-01   22     80
1  Tyrion      M   NaN  1998-09-04   32     98
2   Sansa      F   NaN  1993-11-03   18     67
3    Arya      F   NaN  1994-04-17   14     90
'''
df1['city']=['北京','山西','湖北','澳门'] # 给city列赋值
print(df1)
'''
输出
     name gender city       birth  age  score
0    Show      M   北京  1995-07-01   22     80
1  Tyrion      M   山西  1998-09-04   32     98
2   Sansa      F   湖北  1993-11-03   18     67
3    Arya      F   澳门  1994-04-17   14     90
'''
4、插入一行(会被覆盖,可以进行分割合并的方式)
df1=pd.DataFrame([['Show','M',22],['Tyrion','M',32],['Sansa','F',18],['Arya','F',14]],columns=['name','gender','age'])
row=['111','222','333']
df1.iloc[1]=row
print(df1)

在行索引为1的位置插入数据 ‘111’,‘222’,‘333’
结果:
在这里插入图片描述

5、先创建一个DataFrame,用来增加数据框的最后一行
new=pd.DataFrame({'name':'lisa',
                 'gender':'F',
                 'age':19
                 },index=[0]
                )
print(new)
'''输出为:
   name gender  age
0  lisa      F   19
'''

给df1最后添加一行:

df1=df1.append(new,ignore_index=True)

ignore_index=True,表示不按原来的索引,从0开始自动递增

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章