python pandas常用函数_python(21)-pandas-常用函数

pandas常用函数

1.导入

2.数据清洗、预处理

3.数据分类、筛选

4.数据统计

5.导出

def main():

#1.导入与查看

df=pd.DataFrame(pd.read_csv('',header=1))

df = pd.DataFrame(pd.read_excel(""))

df=pd.DataFrame({"id":[1001,1002,1003],

"date":pd.range("20191220",periods=6),

"city":["beijing","nanjing","shanghai"],

"value":[10.12,20.23,30.34]

},

columns=["id","date","city","value"])

print(df.shape) #查看行列

df.info()

df.head()

print(df.shape) #数据格式 int64..

print(df.isnull()) #检查数据空值

print(df['city'].isnull())#查看特定列空值

print(df['city'].unique())#查看特定列唯一值

print(df.value) #查看数据表值

print(df.colums) #查看列名

print(df.tail(3)) #查看后3行

#2. 数据清洗、预处理

df.dropna(how="any") #删除表中含有空值的行

df.fillna(value=0) #0填充表中空值

df["value"].fillna(df["value"].mean())#均值填充

df["city"].fillna(df["city"].map(str.strip)) #清除字段中的字符空格

df["city"]=df["city"].str.lower() #大小写转换

df["value"].astype('int') #更改数据格式

df.rename(colums={"value":"value-2"}) # 更改列名

df["value"].drop_duplicates() #删除重复值

df["city"].replace("beijing","beijing2") # 数据替换

df1=pd.DataFrame({"id":[1001,1002,1003],

"gender":["male","female"],

"pay":["y","n","y"],

"m-point":[10.12,20]

},

)

df_inner=pd.merge(df,df1,how="inner")

df_left=pd.merge(df,df1,how="left")

df_right = pd.merge(df, df1, how="right")

df_outer = pd.merge(df, df1, how="outer")

df.inner.set_index("id") #设置索引

df.inner.sort_value(by=["age"]) # 特定列的值排序

#3. 数据分类、筛选

df_inner['group']=np.where(df_inner['price']>3000,"high","low") #price>3000 group 显示high 否则显示low

df_inner.loc[(df_inner['city']=="beijing")&(df_inner['price']>=4000),'sign']=1 #复合条件的数据进行分组标记

print(df_inner.loc[3]) #索引提取单行的数值

print(df_inner.loc[0:5]) #区间取值

df_inner.reset_index() #重设索引

df_inner=df_inner.reset_index("date")#设置日期为索引

print(df_inner[:"20191228"] ) #提取28号前的所有数据

print(df_inner.iloc[:3,:2]) #按位置提取数据

print(df_inner.iloc[[0,2,3], [2,3]]) # 按位置单独提取数据

df_inner['city'].isin(["beijing"])#city列的值是否为beijng

df_inner.groupby("city").count() #对所有列进行计数汇总

df_inner.groupby("city")["id"].count() # 对所有列进行计数汇总

df_inner.groupby(["city",'value'])["id"].count()

#4.数据统计

df_inner.sample(n=3) #简单的数据采样

weights=[0,0,0,0,0.5,0.5] #手动设置采样权重

df_inner.sample(n=2,weights=weights)

df_inner.sample(n=6,replace=False) #采样后不放回

df_inner.sample(n=6, replace=True) #采样后放回

print(df_inner.describe().round(2).T ) #描述性统计

print(df_inner['value'].corr(df_inner["city"])) # 相关性分析

print(df_inner['value'].corr())

#5.写入EXCEL

df_inner.toexcel("save_excel.xlsx",sheet_name="mysheet")

df_inner.to_csv("save_excel.csv")

pass

if __name__=="__main__":

main()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值