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, f, 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---------------expand=False-------------------- 0 [a, b, c, f, j] 1 [c, d, e, f, h] 2 NaN 3 [f, g, h, x, g] dtype: object ########################################################## ---------------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] 2NaN 3 [f_g_h_x, g] dtype: object [Finished in 0.4s]
以上这篇基于pandas中expand的作用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持考高分网。



