python数据分析

Python是一种非常流行的编程语言,尤其在数据分析领域。Python拥有丰富的库和框架,可以帮助你执行各种数据分析任务。Python常用的数据分析工具之一:NumPy。

Numpy用于进行大规模数值和矩阵运算,提供了多维数组对象和一系列操作这些数组的函数。

numpy-base:

numpy-base是NumPy包的一个子集,它提供了NumPy的核心功能。以下是一些numpy-base包含的功能:

(1)多维数组对象(ndarray):NumPy的核心数据结构,用于存储同质数据类型的元素。

(2)数组创建和操作:创建数组,数组切片,数组拼接等。

(3)数学函数:执行基本的数学运算,如加减乘除,三角函数等。

(4)索引和切片:提供灵活的索引和切片操作来访问和修改数组中的元素。

(5)数据类型:定义和使用不同的数据类型,如整数,浮点数等。

1.创建NumPy类型的数组:

import numpy as np
#创建一维数组:
d = np.arange(15)
print(d)
#创建二维数组:
d1 = d1.reshape(3,5)
print(d1)
#创建三维数组:
d2= np.arange(15).reshape(5,3)
print(d2)

创建数组的四种方式:

import numpy as np
#方式1
data1 = np.arange(15).reshape(5,3)
print(data1)
#方式2
#创建全0矩阵
print(np.zeros(10))         #一维数组
print(np.zeros((2,5)))      #二维数组
print(np.zeros((2,3,4)))    #三维数组
#方式3
#创建创建全1矩阵
print(np.ones(10))          #一维数组
print(np.ones((2,5)))       #二维数组
print(np.ones((2,3,4)))     #三维数组
#方式4
print(np.empty((1,2,3)))

2.转换数据类型:

import numpy as np

data = np.array([1,2,3,4,5,6])
#输出数据类型,类型为int。
print(data.dtype)

#类型转换 将int转化为float
data = np.array([1,2,3,4,5,6],dtype=np.float64)
#输出数据类型,类型为float。
print(data.dtype)

#类型转换 将float转化为int
data = data.astype(np.int32)
#输出数据类型,类型为int。
print(data.dtype)

3.索引与切片

索引和切片用于获取数组中部分的数据,尤其是切片

(1)索引
一维数组:
import numpy as np

data = np.array([1,2,3,4,5,6])
print(data)
#获取数字4的值,通过下标值指向要获取的数据,下标值由0开始至无限大
print(data[3])
#负数从右侧向左侧数,通常情况用于获取最后一个数,[-2]为数组中的5
print(data[-2])
二维数组:
import numpy as np

#创建一个2行7列的二维数组
data = np.arange(14).reshape(2,7)

#输出结果为[[0 1 2 3 4 5 6] [7 8 9 10 11 12 13]]
print(data)

#输出结果为第一行第五列,数据为4
print(data[0,4])

#输出结果为倒数第一行倒数第一列,数据为13
print(data[-1,-1])

#输出结果为倒数第一行倒数第一列和第一行倒数第一列,数据为13,6
print(data[-1,-1],data[0,-1])


三维数组:
import numpy as np

#创建一个   [[[0 1 2 3 4]          的三维数组
#             [5 6 7 8 9]
#             [10 11 12 13 14]]
#
#            [[15 16 17 18 19]
#             [20 21 22 23 24]
#             [25 26 27 28 29]]]
data = np.arange(30).reshape(2,3,5)
print(data)

#输出结果为15
print(data[1,0,0])

#输出结果为14,29
print(data[0,2,-1],data[-1,-1,-1])

#同上,两种不同写法
print(data[0][2][-1],data[-1][-1][-1])

(2)切片
一维数组:
import numpy as np

data = np.array([1,2,3,4,5,6])
#a~b,a<=x<b ,左闭右开

#输出结果为[1,2,3]
print(data[0:3])

#输出结果为[3,4,5,6]
print(data[2:])

#输出结果为[1,2,3,4]
print(data[:4])

#输出结果为[1,2,3,4]
print(data[:-2])
二维数组:
import numpy as np

data = np.arange(14).reshape(2,7)
print(data)
#参数1:行参数
#参数2:列参数

#输出结果为[[7 8 9]]
print(data[1:,:3])

#输出结果为[[3][10]]
print(data[:,3:4])

#输出结果为[[10]]
print(data[1:,3:4])    
三维数组:
import numpy as np

data = np.arange(30).reshape(2,3,5)
print(data)
print(data[0:1,:,0:2])
print(data[0:1,2:,0:2])
print(data[0:1,2:,:])

4.numpy数据运算:

import numpy as np

a = np.random.random(10000)*10
b = np.random.random(10000)*10
print(a)
print(b)
#算术运算
#加
print(a+b)
print(np.add(a,b))
#减
print(a-b)
print(np.subtract(a,b))
#乘
print(a*b)
print(np.multiply(a,b))
#除
print(a/b)
print(np.divide(a,b))

#数学运算
ang = np.array([0,30,45,60,90,120,135,150,180])
rad = np.sin(ang*np.pi/180)
print(rad)

#统计运算
data = np.array([1,2,3,4,5])
#求平均值
print(data.mean())
print(np.average(data))
# 配置权重
print(np.average(data,weights=np.array([2,2,1,1,1])))
print(np.average(data,weights=np.array([1,1,1,2,2])))
#求中位数
print(np.median(data))
#求方差
print(np.var(data))
#标准差
print(np.std(data))

#聚合运算
#累加
print(np.sum(data))
#累乘
print(np.prod(data))
#求最大值
print(np.max(data))
#求最小值
print(np.min(data))

data = np.array([1,2,3,4,5])
#筛选,排序
#输出选中数据的下标值
print(np.where(data>3))
print(np.where(data>1))
print(np.where(data<3))
#排序
print(np.sort([5,3,7,9,1,4,2,3,6,8]))
print(np.sort([5,3,7,9,1,4,2,3,6,8])[::-1])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值