DataFrame操作

获取某几列

# 将xls数据用pandas打开
data = pd.read_excel('./data/xxx.xls')
# 提取表格中某几列
# 例提取id和brand_service_items列
data = data.loc[:, ['id', 'brand_service_items']]
# 将新的data写入excel,也可不写入
data.to_excel('./data/com_tra_deal.xls')

删除指定列的空值行


DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
# axis:       default 0指行,1为列
# how:       {‘any’, ‘all’}, default ‘any’指带缺失值的所有行;'all’指清除全是缺失值的
# thresh:    int,保留含有int个非空值的行
# subset:   对特定的列进行缺失值删除处理
# inplace:  这个很常见,True表示直接在原数据上更改


# 删除完了之后索引行索引会改变,可以进行重设
# drop: 重新设置索引后是否将原索引作为新的一列并入DataFrame,默认为False
# inplace: 是否在原DataFrame上改动,默认为False,True表示在原DataFrame上修改,False将修改后DataFrame作为新的对象返回
# level: 如果索引(index)有多个列,仅从索引中删除level指定的列,默认删除所有列
# col_level: 如果列名(columns)有多个级别,决定被删除的索引将插入哪个级别,默认插入第一级
# col_fill: 如果列名(columns)有多个级别,决定其他级别如何命名

# 举例
# 删除id_product文件中brand_service_items列的空数据
id_product.dropna(subset=['brand_service_items'], inplace=True)
# 删除完重设索引
id_product = id_product.reset_index(drop=True)

将字典写入Excel中

# 提取字典中的两列值key是键值,value是cont【key】对应的值
key = list(result.keys())
value = list(result.values())
# 利用pandas模块先建立DateFrame类型,然后将两个上面的list存进去
result_excel = pd.DataFrame()
result_excel["name"] = key
result_excel["product_result"] = value
# 也可以设置其他列后续填入即可
result_excel["code"] = 'NaN'
result_excel["scope"] = 'NaN'

result_excel.to_excel('./data/xxx.xls')

insert插入一列

DataFrame.insert(self, loc, column, value, allow_duplicates=False)

注意:进行insert之后,会修改原数据,且不能用于赋值操作

loc : int #使用整型数据,是列数据插入的位置,必须是0到len(columns)之间的数
column : string, number, or hashable object #类型可以是字符串、数字或者object。表示列的标签名
value : int, Series, or array-like # 整数、Series或者数组型数据。是插入列的值
allow_duplicates : bool, optional # 布尔型数据,可选参数。如果某个列名在dataframe中已经存在,将allow_duplicates置为true才可以将同样的列名插入。

data.insert(data.shape[1], 'food_drink', 'NaN')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值