Python3 数据处理常用模块

Python3 数据处理常用模块

1、os

os.startfile:

调用系统程序打开指定路径下的文件,具体使用形式为:

os.startfile(path)

path:
1、根目录表示为:'.'
2、为避免'/'对path的影响,在path前面加上转义字符r

os.getcwd:

返回当前工作目录,使用形式为:

os.getcwd()

os.chdir:

切换工作目录,使用形式为:

os.chdir(path)

os.listdir

列出给定目录或当前目录下的文件和文件夹名称,使用形式为:

os.listdir()          #列出当前目录下的文件和文件夹名
os.listdir(path)      #列出path目录下的文件和文件夹名

2、 re

re.search

官方给出的格式为:

re.search(pattern, string, flags=0)

以及官方给出的解释:
Scan through string looking for a match to the pattern, returning a match object, or None if no match was found.

意思是re.search()会在一段字符串里面扫描你给定的pattern语句,如果匹配成功则返回匹配对象,如果匹配不成功则返回None。

  • 关于匹配对象,在程序中得出的结果是
1 <_sre.SRE_Match object; span=(7, 9), match='85'>     #
2 None                                                 #

3、pickle

在数据处理中,最常使用的方法为:

dump(object, file)
dumps(object) -> string
load(file) -> object
loads(string) -> object
  • pickle.load()

使用形式:

pickle.load(file, *, fix_imports=True, encoding='ASCII', errors='strict')

对各个参数的解释,官方给出的是:
1、file:The argument file must have two methods, a read() method that takes an integer argument, and a readline() method that requires no arguments. Both methods should return bytes. Thus file can be a binary file object opened for reading, an io.BytesIO object, or any other custom object that meets this interface.

  • 也就是说file必须有两个方法,即read()readline(),read()需要一个整型参数,readline()则不需要。记得打开pkl文件的时候用'rb' 方式。

2、fix_imports=True:If fix_imports is True, pickle will try to map the old Python 2 names to the new names used in Python 3.

  • 简单地说,就是避免兼容性问题,让Python 2的pkl文件可以在Python 3中打开。

3、encoding=’ASCII’, errors=’strict’encoding and errors tell pickle how to decode 8-bit string instances pickled by Python 2; these default to ‘ASCII’ and ‘strict’,respectively. The encoding can be ‘bytes’ to read these 8-bit string instances as bytes objects.

  • 给定pickle编码方式,默认是ASCIIstrict ,一般不需要设置。
  • pickle.dump()

使用形式:

pickle.dump(obj, file, protocol=None, *, fix_imports=True)

官方释义为:
Write a pickled representation of obj to the open file object file.

  • 即把obj对象写进打开的pickle文件file中,打开文件的方法为'wb'

4、numpy

numpy.sort

使用形式:

numpy.sort(a, axis=-1, kind='quicksort', order=None)

对于sort方法,官方给出的释义是:
Return a sorted copy of an array.

即返回数组的已排列副本,数字从小到大,字母则按照顺序。该方法会改变数组本身。


  • a:给定普通数组或numpy数组。
  • axis:只能整型或None,默认是-1,即最后一个轴,或者你想要哪个轴排列就输入哪一轴。若是None,则将所有元素进行排序

  • kind:有quicksortmergesortheapsort 三种。
类型 释义 运算速度 工作空间大小 稳定性
quicksort 快速排序 1 0
mergesort 混合排序 2 ~n/2
heapsort 堆排 3 0

  • order:

使用“order”关键字指定在对 结构化数组 进行排序时要使用的字段。

numpy.argsort()

使用形式:

numpy.argsort(a, axis=-1, kind='quicksort', order=None)

参数定义与numpy.sort() 类似,只是numpy.argsort() 返回的是序列,不改变操作的数组。

numpy.sort_complex()

使用形式:

sort_complex(a)

官方给出的解释是:
Sort a complex array using the real part first, then the imaginary part.
即先用实部来排序一个复杂的数组,然后是虚部。也就是说可以用来对复数进行排序,且排序方式是先从实部开始。貌似没用过~~~~

numpy.source()

使用形式:

source(object, output=<_io.TextIOWrapper name='' mode='w' encoding='utf-8'>)

官方给出的释义为:
Print or write to a file the source code for a NumPy object.
即把源代码作为一个NumPy对象打印或者写入到文件。

  • object:可以是函数、类、模块
  • output:一般默认即可,源代码会直接打印出来,但若是文件对象则只能是写入模式'w' 或者追加模式'a'

由于返回的源代码只能是在Python平台上编写的,所以,一般没啥用,因为你可以直接打开py文件~~~~

numpy.split()

使用形式:

numpy.split(ary, indices_or_sections, axis=0)

官方给出的释义为:
Split an array into multiple sub-arrays.
即将NumPy数组拆分为多个子数组。

  • ary:只能为ndarray类型。
  • indices_or_sections:可以为整型或者一维数组。
    若是整型参数,那么NumPy数组会被分割成指定长度的数组,但是参数要符合实际,超过长度了就会报错。
    若是一维数组,则分段切割,如[2,3]数组会把NumPy数组分成[:2][2:3][3:]三段。
    axis:要哪个轴用哪个。

numpy.squeeze()

使用形式为:

numpy.squeeze(a, axis=None)

官方给出的释义为:
Remove single-dimensional entries from the shape of an array.
即从NumPy数组中移除单维条目。

numpy.stack()

使用形式为:

numpy.stack(arrays, axis=0, out=None)

官方给出的释义为:
Join a sequence of arrays along a new axis.
即添加一系列的数组到新的轴上

  • arrays : 每一个数组都应该有相同的形状。
  • axis=0 : 新增加的数组在结果中的轴数。
  • out=None : 对最后返回的结果进行选择,有提供参数out,则提供内存来保存结果,若没有任何参数则直接返回结果,不保存。一般直接把结果返回,直接赋值会更直观吧~~~

numpy.sum()

使用形式为:

numpy.sum(a, axis=None, dtype=None, out=None, keepdims=<class 'numpy._globals._NoValue'>)

官方释义为:
Sum of array elements over a given axis.
即在给定的axis上对数组元素求和。

  • axis=None : 不指定或者整型数据或者整型元组,默认是None,会对输入的数组进行全部求和。若是负数,则求和最后一个到第一个轴的数据。

numpy.swapaxes()

使用形式为:

numpy.swapaxes(a, axis1, axis2)

官方释义为:
Interchange two axes of an array.
即交换一个数组的两个轴。

numpy.take()

使用形式为:

numpy.take(a, indices, axis=None, out=None, mode='raise')

官方释义:
Take elements from an array along an axis.
即在轴中取元素。对于选取元素来说很方便,可直接提取组成一个NumPy数组

numpy.tile()

使用形式为:

numpy.tile(A, reps)

官方给出的释义是:
Construct an array by repeating A the number of times given by reps.
通过重复reps给出的次数来构造一个数组。

  • reps : 可以是整型数据、元组。

numpy.trace()

使用形式为:

numpy.trace(a, offset=0, axis1=0, axis2=1, dtype=None, out=None)

官方给出的释义是:
Return the sum along diagonals of the array.
即返回NumPy数组的对角线的和。

numpy.transpose()

使用形式为:

numpy.transpose(a, axes=None)

官方给出的释义为:
Permute the dimensions of an array.
即排列数组的维数

你可能感兴趣的:(Python3 数据处理常用模块)