Python数据分析和处理

数据的维度

从一个数据到一组数据:一个数据表达一个含义,一组数据表达一个或多个含义

维度:一组数据的组织形式

一维数据:由对等关系的有序或无序数据构成。采用线性方式组织

二维数据:由多个一维数据组成,是一维数据的组合形式

多维数据:由一维或二维数据在新维度上扩展形成

高维数据:仅利用最基本的二元关系展示数据间的复杂结构,就是由键值对将数据组织起来形成的一种数据方式

Python数据分析和处理

NumPy

NumPy是一个开源的Python科学计算基础库,包含:

一个强大的N维数组对象ndarray;

广播功能函数;

整合C/C++/Fortran代码的工具;

线性代数、傅里叶变换、随机数生成等功能;

NumPy是SciPy、Pandas等数据处理或科学计算库的基础

NumPy的引用

import numpy as np (引入模块的别名)尽管别名可以省略或更改,建议使用上述约定的别名

N维数组对象ndarray

ndarray是一个多维数组对象,由两部分构成:实际的数据;描述这些数据的元数据(数据维度、数据类型等);

ndarray数组一般要求所有元素类型相同(同质),数组下标从0开始

ndarray对象的属性

Python数据分析和处理

ndarray实例

In [22]:a=np.array([[0, 1, 2, 3, 4],
                    [9, 8, 7, 6, 5]])
In [23]: a.ndim
Out [23]:2
In [24]: a.shape
Out [24]: (2, 5)
In [25]: a.size
Out [25]: 10
In [26]: a.dtype
Out [26]: dtype('int32')
In [27]: a. itemsize
Out[27]:4

ndarray数组的创建方法

从Python中的列表、元组等类型创建ndarray数组

使用NumPy中函数创建ndarray数组,如: arange, ones, zeros等

从字节流(raw bytes )中创建ndarray数组

从文件中读取特定格式,创建ndarray数组

ndarray数组的创建方法

(1)从Python中的列表、元组等类型创建ndarray数组

X = np.array(list/tuple)

X = np.array (list/tuple, dtype=np.float32)

当np.array()不指定dtype时,NumPy将根据数据情况关联一个dtype类型

Python数据分析和处理

数组与标量之间的运算:作用于数组的每一个元素

#NumPy一元函数实例
In [176]: a = np.arange (24) .reshape((2,3,4))
In [177]: np. square(a)
Out [177]:
array([[[ 0, 1, 4, 9],
        [ 16, 25, 36, 49],
        [ 64, 81, 100, 121]],
#注意数组是否被真实改变
        [[144, 169, 196, 225],
        [256, 289, 324, 361],
        [400, 441, 484, 529]]], dtype=int32)
In [178]: a = np.sqrt(a)
In [179]: a
Out[179]:
array([[[ e.|, 1., 1.41421356, 1.73205081],
        [2.23606798, 2.44948974, 2.64575131],
        [ 2.82842712, 3.[2.|, 3.16227766, 3.31662479]],
        [[ 3.46410162, 3.60555128, 3.74165739, 3.87298335],
        [4. , 4.12310563, 4.24264069, 4.35889894],
        [ 4.47213595, 4.58257569, 4.69041576, 4.79583152]]])
In [180]: np.modf(a)
Out [180]:
(array([[[ e.Θ.,0.41421356, 0.73205081],
        [0.0.23606798, 0.44948974, 0.64575131],
        [ 0.16227766, 0.31662479]],
        [[ 0.46410162, 0.60555128, 0.74165739, 0.87298335],
        [Θ.[0.82842712, 0.0.12310563, 0.24264069, 0.35889894],
        [0.47213595, 0.58257569, 0.69041576, 0.79583152]]]),
array([[[ 0., 1., 1., 1.],[2., 2., 2., 2.],[2., 3., 3., 3.]],
[[ 3.,3.,3., 3.],4.,4.,4.,4.],4., 4.,4., 4.]]]))
#NumPy二元函数实例
In [203]: a = np.arange(24). reshape((2,3,4))
In [204]: b = np.sqrt(a)
In [205]: a
Out[205]:
array([[[ 0, 1, 2, 3],[4, 5, 6, 7],[8, 9, 10, 11]],
[[12, 13, 14, 15],[16, 17, 18, 19],[20, 21, 22, 23]]])
In [206]: b
Out[206]:
array([[[ 0.1, 1.41421356, 1.73205081],
[2. , 2.23606798, 2.44948974, 2.64575131],
[ 2.82842712, 3., 1., 3.16227766, 3.31662479]],
[[ 3.46410162, 3.60555128, 3.74165739, 3.87298335],
[4.4.12310563, 4.24264069, 4.35889894],
[ 4.47213595, 4.58257569, 4.69041576, 4.79583152]]])
In [207]: np. maximum(a, b)
Out[207]:
array([[[| 0.,1., 2., 3.],[5., 6., 7.],[8.,9., 10., 11.]],
#运算结果为浮点数
[[ 12., 13., 14., 15.],
[ 16., 17., 18., 19.],
[ 20., 21., 22., 23.]]])
In [208]: a> bOut[208]:
array([[[False, False, True, True],
[True, True, True, True],
[True, True, True, True]],
[[ True, True, True, True],
[True, True, True, True],
[True, True, True, True]]], dtype=bool)

Original: https://blog.csdn.net/LQB001/article/details/123127892
Author: Brave!
Title: Python数据分析和处理

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/761624/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球