【Python学习系列二十一】pandas库基本操作
生活随笔
收集整理的這篇文章主要介紹了
【Python学习系列二十一】pandas库基本操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
pandas很強大,操作參考官網:http://pandas.pydata.org/pandas-docs/stable/
也有一份10分鐘入門的材料:http://pandas.pydata.org/pandas-docs/stable/10min.html ?對于行列切片,開始基本都是看這份。
總結了些最基本的操作,如下:
# -*- coding: utf-8 -*-import numpy as np import pandas as pd#導入csv文件,空格分割 ds=pd.read_csv(r"lx_test_features_all.txt",sep='\t',encoding='utf8',\names=['u_spu_num','u_brand_num','u_cat_num','u_cat_spu','u_brand_spu',\'u_spu_freq','u_spu_date','u_spu_click_freq','u_spu_click_date',\'u_first_date','u_last_date','u_spu_ratio','u_ratio']) #查看索引、數據類型和內存信息 print ds.info()#創建100行13列的隨機數組成的DataFrame對象 ds_test=pd.DataFrame(np.random.rand(100,13)) print ds_test.shape del ds_test #刪除變量#提取某幾列數據 ds_col=ds[['u_spu_ratio','u_ratio']] print ds_col.shape[1] del ds_col#行列定位操作 s=ds.iloc[0,:] #獲取第一行 print s.iloc[0] #獲取第一列 print ds.iloc[0,0]#獲取第一行第一列 ds.set_index('u_spu_num')#設置索引列 print s.loc['u_spu_num'] del s#數據清理 print ds.isnull()#檢查DataFrame對象中的空值,并返回一個Boolean數組 print ds.isnull()#檢查DataFrame對象中的非空值,并返回一個Boolean數組 ds.dropna()#刪除所有包含空值的行 ds.dropna(axis=1)#刪除所有包含空值的列 ds.dropna(axis=1,thresh=5)#刪除所有小于5個非空值的行 ds.fillna('0')#用0替換DataFrame對象中所有的空值#數據處理 ds_tmp=ds[ds['u_ratio'] > 0.5] #選擇u_ratio列的值大于0.5的行 print ds_tmp.shape ds_tmp.sort_values('u_ratio')#按照列u_ratio排序數據,默認升序排列 print ds_tmp ds_tmp.sort_values('u_ratio', ascending=False)#按照列u_ratio降序排列數據 print ds_tmp ds.groupby('u_spu_num').agg(np.mean)#返回按列col1分組的所有列的均值 ds_tmp.apply(np.mean)#對DataFrame中的每一列應用函數np.mean ds_tmp.apply(np.max,axis=1)#對DataFrame中的每一行應用函數np.max #創建一個按列u_ratio進行分組,并計算u_spu_num和u_spu_ratio的最大值的數據透視表 ds.pivot_table(index='u_ratio', values=['u_spu_num','u_spu_ratio'], aggfunc=max)#數據合并 ds.append(ds_tmp)#將ds_tmp中的行添加到ds的尾部 ds.concat([ds, ds_tmp],axis=1)#將ds_tmp中的列添加到ds的尾部ds ds.join(ds_tmp,on='u_spu_num',how='inner')#對ds的列和ds_tmp的列執行SQL形式的join#數據統計 ds.describe()#查看數據值列的匯總統計 ds.mean()#返回所有列的均值 ds.corr()#返回列與列之間的相關系數 ds.count()#返回每一列中的非空值的個數 ds.max()#返回每一列的最大值 ds.min()#:返回每一列的最小值 ds.median()#返回每一列的中位數 ds.std()#返回每一列的標準差del ds,ds_tmp總結
以上是生活随笔為你收集整理的【Python学习系列二十一】pandas库基本操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【正一专栏】梅西大婚——一辈子守候你都是
- 下一篇: Eclipse分栏显示同一个代码文件的设