Python_Pandas_数据的插入和删除

一.插入数据

用法和参数

  • DataFrame.insert(index, a, b)
    • index:要插入数据的位置
    • a:要插入数据的列标签
    • b:要插入数据的列数据

实例

import pandas as pd

data = pd.read_excel('产品统计表.xlsx')
# 在数据表的最后面新增一列数据
data['品牌'] = ['AM', 'DE', 'SR', 'AM', 'TY', 'DE', 'UD']
print(data)
'''
编号   产品  成本价(元/个)  销售价(元/个)  数量(个)  成本(元)  收入(元)  利润(元)  品牌
0  a001   背包        16        65     60    960   3900   2940  AM
1  a002   钱包        90       187     50   4500   9350   4850  DE
2  a003   背包        16        65     23    368   1495   1127  SR
3  a004  手提包        36       147     26    936   3822   2886  AM
4  a005   钱包        90       187     78   7020  14586   7566  TY
5  a006  单肩包        58       124     63   3654   7812   4158  DE
6  a007  单肩包        58       124     58   3364   7192   3828  UD
'''
# 在数据表的指定位置插入列数据
data.insert(2, '新品牌', ['AM', 'DE', 'SR', 'AM', 'TY', 'DE', 'UD'])
print(data)
'''
编号   产品 新品牌  成本价(元/个)  销售价(元/个)  数量(个)  成本(元)  收入(元)  利润(元)  品牌
0  a001   背包  AM        16        65     60    960   3900   2940  AM
1  a002   钱包  DE        90       187     50   4500   9350   4850  DE
2  a003   背包  SR        16        65     23    368   1495   1127  SR
3  a004  手提包  AM        36       147     26    936   3822   2886  AM
4  a005   钱包  TY        90       187     78   7020  14586   7566  TY
5  a006  单肩包  DE        58       124     63   3654   7812   4158  DE
6  a007  单肩包  UD        58       124     58   3364   7192   3828  UD
'''

二.删除数据

描述

  • drop()函数既可以删除指定的列,还可以删除指定的行

用法和参数

  • DataFrame.drop(label=None, axis=0)
    • label:要删除的列标签或行标签
    • axis:指定删除的轴

实例

  • 删除列
import pandas as pd

data = pd.read_excel('产品统计表.xlsx')
print(data)
'''
编号   产品  成本价(元/个)  销售价(元/个)  数量(个)  成本(元)  收入(元)  利润(元)
0  a001   背包        16        65     60    960   3900   2940
1  a002   钱包        90       187     50   4500   9350   4850
2  a003   背包        16        65     23    368   1495   1127
3  a004  手提包        36       147     26    936   3822   2886
4  a005   钱包        90       187     78   7020  14586   7566
5  a006  单肩包        58       124     63   3654   7812   4158
6  a007  单肩包        58       124     58   3364   7192   3828
'''
# 删除数据表指定的列
a = data.drop(['成本价(元/个)', '成本(元)'], axis=1)
print(a)
'''
 编号   产品  销售价(元/个)  数量(个)  收入(元)  利润(元)
0  a001   背包        65     60   3900   2940
1  a002   钱包       187     50   9350   4850
2  a003   背包        65     23   1495   1127
3  a004  手提包       147     26   3822   2886
4  a005   钱包       187     78  14586   7566
5  a006  单肩包       124     63   7812   4158
6  a007  单肩包       124     58   7192   3828
'''
# 删除数据表的第3列和第6列
b = data.drop(data.columns[[2, 5]], axis=1)
print(b)
'''
编号   产品  销售价(元/个)  数量(个)  收入(元)  利润(元)
0  a001   背包        65     60   3900   2940
1  a002   钱包       187     50   9350   4850
2  a003   背包        65     23   1495   1127
3  a004  手提包       147     26   3822   2886
4  a005   钱包       187     78  14586   7566
5  a006  单肩包       124     63   7812   4158
6  a007  单肩包       124     58   7192   3828
'''
# 删除数据表指定的列
c = data.drop(columns=['成本价(元/个)', '成本(元)'])
print(c)
'''
编号   产品  销售价(元/个)  数量(个)  收入(元)  利润(元)
0  a001   背包        65     60   3900   2940
1  a002   钱包       187     50   9350   4850
2  a003   背包        65     23   1495   1127
3  a004  手提包       147     26   3822   2886
4  a005   钱包       187     78  14586   7566
5  a006  单肩包       124     63   7812   4158
6  a007  单肩包       124     58   7192   3828
'''
  • 删除行
import pandas as pd
data = pd.read_excel('产品统计表.xlsx', index_col=0)
print(data)
'''
产品  成本价(元/个)  销售价(元/个)  数量(个)  成本(元)  收入(元)  利润(元)
编号                                                       
a001   背包        16        65     60    960   3900   2940
a002   钱包        90       187     50   4500   9350   4850
a003   背包        16        65     23    368   1495   1127
a004  手提包        36       147     26    936   3822   2886
a005   钱包        90       187     78   7020  14586   7566
a006  单肩包        58       124     63   3654   7812   4158
a007  单肩包        58       124     58   3364   7192   3828
'''
# 按照行标签删除指定行的数据
a = data.drop(['a001', 'a004'], axis=0)
print(a)
'''
产品  成本价(元/个)  销售价(元/个)  数量(个)  成本(元)  收入(元)  利润(元)
编号                                                       
a002   钱包        90       187     50   4500   9350   4850
a003   背包        16        65     23    368   1495   1127
a005   钱包        90       187     78   7020  14586   7566
a006  单肩包        58       124     63   3654   7812   4158
a007  单肩包        58       124     58   3364   7192   3828
'''
# 按照行序号删除指定行的数据
b = data.drop(data.index[[0, 4]], axis=0)
print(b)
'''
产品  成本价(元/个)  销售价(元/个)  数量(个)  成本(元)  收入(元)  利润(元)
编号                                                       
a002   钱包        90       187     50   4500   9350   4850
a003   背包        16        65     23    368   1495   1127
a004  手提包        36       147     26    936   3822   2886
a006  单肩包        58       124     63   3654   7812   4158
a007  单肩包        58       124     58   3364   7192   3828
'''
# 将行标签以列表的形式传递给drop函数
c = data.drop(index=['a001', 'a004'])
print(c)
'''
产品  成本价(元/个)  销售价(元/个)  数量(个)  成本(元)  收入(元)  利润(元)
编号                                                       
a002   钱包        90       187     50   4500   9350   4850
a003   背包        16        65     23    368   1495   1127
a005   钱包        90       187     78   7020  14586   7566
a006  单肩包        58       124     63   3654   7812   4158
a007  单肩包        58       124     58   3364   7192   3828
'''

你可能感兴趣的:(Water,列表,python,大数据,机器学习,数据分析)