基于pandas中expand的作用详解

yipeiwu_com6年前Python基础

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
<class 'pandas.core.frame.DataFrame'>
---------------expand=False--------------------
0  [a, b, c, f, j]
1  [c, d, e, f, h]
2        NaN
3  [f, g, h, x, 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的作用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python OpenCV学习笔记实现二维直方图

python OpenCV学习笔记实现二维直方图

本文介绍了python OpenCV学习笔记实现二维直方图,分享给大家,具体如下: 官方文档 – https://docs.opencv.org/3.4.0/dd/d0d/tutori...

使用Python和OpenCV检测图像中的物体并将物体裁剪下来

使用Python和OpenCV检测图像中的物体并将物体裁剪下来

介绍 硕士阶段的毕设是关于昆虫图像分类的,代码写到一半,上周五导师又给我新的昆虫图片数据集了,新图片中很多图片很大,但是图片中的昆虫却很小,所以我就想着先处理一下图片,把图片中的昆虫裁剪...

python smtplib模块自动收发邮件功能(一)

python smtplib模块自动收发邮件功能(一)

自动化测试的脚本运行完成之后,可以生成test report,如果能将result自动的发到邮箱就不用每次打开阅读,而且随着脚本的不段运行,生成的报告会越来越多,找到最近的报告也是一个比...

Python基于matplotlib实现绘制三维图形功能示例

Python基于matplotlib实现绘制三维图形功能示例

本文实例讲述了Python基于matplotlib实现绘制三维图形功能。分享给大家供大家参考,具体如下: 代码一: # coding=utf-8 import numpy as np...

Python的re模块正则表达式操作

这个模块提供了与 Perl 相似l的正则表达式匹配操作。Unicode字符串也同样适用。 正则表达式使用反斜杠" \ "来代表特殊形式或用作转义字符,这里跟Python的语法冲突,因此...