Pandas 使用技巧(一)

2021-08-20 19:37:59 字數 1593 閱讀 1449

pandas 的列表

pd

.series([1,2,3,4])

它會為每乙個資料設定乙個序號

dtype,列表中資料的格式

dataframe:

pandas 的矩陣, 在pandas中叫做dataframe, 它是乙個大的矩陣類似於二維的numpy, 資料為numpy的資料,但是為每行指定索引和每一列指定索引,結構類似於通常意義的表。

dates = pd.date_range('20150101', periods=6)

df = pd.dataframe(np.random.randn(6, 4), index=dates, columns=['a','b', 'c', 'd'])

資料結果是:

a         b         c         d

2015-01-01

0.136134 -0.289587 -0.695025

0.640421

2015-01-02 -0.118569

0.610150

0.750436 -1.254998

2015-01-03

0.659676 -0.465765 -1.206549

0.204780

2015-01-04 -1.128322

0.130286 -0.268923

0.071449

也可以如下定義dataframe

df1 = pd.dataframe(np.arange(12).reshape((3,4)))
這是行和列會被預設賦值只乙個index值

dataframe屬性:

df.index 返回所有行的序號

df.column 返回所有列的序號(column)

df.values 返回所有的value,只是輸出值不包括列和行的序號

df.describe() 獲取對dataframe每一列資料的相關計

df.t 作矩陣的轉置

df.sort_index(axis=1, ascending=false), 對index進行排序,排序依據是行或者列的index

df.sort_values(by=」d」) 對值進行排序,可以指定列的index,來對某一列進行排序

如何選擇資料:

資料切片,針對行

select by label: loc 可以針對行或者列進行選擇, 這裡需要行或列的index name, 這個可以非常靈活的使用

select by position iloc 可以針對行或者列進行選擇, 這裡需要行或列的索引號

mixed selection ix

boolean indexing, 對於列的處理比較好

設定值如何給選定的範圍的資料重新賦值

首先使用,資料選取方法選取資料,然後使用=賦值,可以使用資料的廣播機制來賦值.

* df.a[df.a>0] = 0 對於a列中所有大於0的值都重新賦值為0

* df[「e」]=11 為df加一列資料並且都將它初始化為11

* df[「e」]=np.nan

pandas 使用技巧記錄

這個drop duplicate方法是對dataframe格式的資料,去除特定列下面的重複行。返回dataframe格式的資料。dataframe.to csv des file panda聚合分組 當檔案過大無法單次讀取到記憶體時,可以採用iterator進行多次讀取 reader pd.read...

pandas使用的一些技巧

偶然學到了一些技巧,不知道寫在哪兒,就記在這吧,持續更新ing loc是最慢的。盡量用ix代替。pandas 存在 df.iterrows 的generator 來迴圈dataframe 的 row,這樣的效率是最高的。文件丟在這 轉乙個部落格作為參考 我用的時候 for i,row in tqdm...

pandas使用技巧總結 1

記錄工作中使用過的一些pandas技巧 匯入必要的庫 並設定路徑 對得到資料預處理 cs well data 壓裂段 str.split n 2,expand true 壓裂段形式 井號 層號 段號 str.split 對應list.split 以什麼分割,預設空格,n 分成幾段,預設 1 all ...