基於pandas中expand的作用詳解
阿新 • • 發佈:2020-01-09
expand表示是否把series型別轉化為DataFrame型別
下面程式碼中的n表示去掉下劃線"_"的數量
程式碼如下:
import numpy as np import pandas as pd s2 = pd.Series(['a_b_c_f_j','c_d_e_f_h',np.nan,'f_g_h_x_g']) print("-----------------------------------") print(s2.str.split('_')) print("-----------------------------------") print(s2.str.split('_').str.get(1)) print("-----------------------------------") print(s2.str.split('_').str[1]) print("---------------expand=True--------------------") expand1=s2.str.split('_',expand=True) print(expand1) print(type(expand1)) print("---------------expand=False--------------------") expand2=s2.str.split('_',expand=False) print(expand2) print(type(expand2)) print("##########################################################") print("---------------expand=True,n=1--------------------") expand1=s2.str.rsplit('_',expand=True,n=1) print(expand1) print("---------------expand=False,n=1--------------------") expand2=s2.str.rsplit('_',expand=False,n=1) print(expand2)
執行結果如下:
----------------------------------- 0 [a,b,c,f,j] 1 [c,d,e,h] 2 NaN 3 [f,g,h,x,g] dtype: object ----------------------------------- 0 b 1 d 2 NaN 3 g dtype: object ----------------------------------- 0 b 1 d 2 NaN 3 g dtype: object ---------------expand=True-------------------- 0 1 2 3 4 0 a b c f j 1 c d e f h 2 NaN NaN NaN NaN NaN 3 f g h x g <class 'pandas.core.frame.DataFrame'> ---------------expand=False-------------------- 0 [a,g] dtype: object <class 'pandas.core.series.Series'> ########################################################## ---------------expand=True,n=1-------------------- 0 1 0 a_b_c_f j 1 c_d_e_f h 2 NaN NaN 3 f_g_h_x g ---------------expand=False,n=1-------------------- 0 [a_b_c_f,j] 1 [c_d_e_f,h] 2 NaN 3 [f_g_h_x,g] dtype: object [Finished in 0.4s]
以上這篇基於pandas中expand的作用詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。