Pandas玩转数据(六) -- 通过apply对数据进行处理

Python3数据科学汇总: https://blog.youkuaiyun.com/weixin_41793113/article/details/99707225 


import numpy as np
import pandas as pd
from pandas import Series, DataFrame
ls ..\homework

#查看homework文件夹下的目录

df = pd.read_csv('../homework/apply_demo.csv')
df.head() ##读入数据后,查看前5行

df.size ##查看数据的个数,感觉不如shape直接,但size显示的是m*n的个数

df.shape ##查看数据的形状

df.info() ##查看数据的信息 df.info也可以运行哦,会有不一样的结果

s1 = Series(['a']*7978) #7978个全是'a'的Series
df['A'] = s1 ##给df造属性
df.head()

df['A'] = df['A'].apply(str.upper) ##通过apply把字母全变大写
df.head()

df['data'][0].strip().split(' ') #去掉头尾的空格,以中间的空格分隔

df['data'][0].strip().split(',') #用','分隔

l1 = df['data'][0].strip().split(' ')
l1[1], l1[3],l1[5]

def foo(line):
    items = line.strip().split(' ')
    return Series([items[1], items[3], items[5]])
df_tmp = df['data'].apply(foo) ##通过apply使用函数分隔
df_tmp = df_tmp.rename(columns={0:"Symbol", 1:"Seqno", 2:"Price"})#给属性名重命名
df_tmp.head()

df.head()


 

df_new = df.combine_first(df_tmp) ##加入df_new中没有,df_tmp存在的属性列
df_new.head()

del df_new['data'] ##删除df_new中的'data'属性列
del df_new['A'] ##删除'A'属性列
df_new.head() 

df_new.to_csv('../homework/demo_duplicate小白.csv') ##生成csv到homework目录下
ls ..\homework ##查看homework目录,验证是否生成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值