您的位置:首页 > 编程语言 > Python开发

Python数据科学之处理数据工具教程1(Numpy)

2018-01-02 20:31 465 查看
在写机器学习算法的这段时间中,越来越觉得其实最耗时耗力的数据预处理这一步,数据是否优秀,完全影响机器学习结果的准确度。

而且看各种招聘网站上都需要精通各种数据处理的库。

Python数据处理五大利器:



前言:数据科学概念总结







入门Numpy只需要将我贴出来的代码,复制到你的IDE中。一行行的运行,然后思考,不难。看懂后,自己试着写一遍,自己给自己抛出问题,不看我的代码,自己创建变量运行,没一会儿你就熟练了。基本就满足什么那个 -> 熟练掌握Numpy的使用。要是精通,还得项目实战锻炼。

import numpy as np

"""数组的创建和访问"""
# create from python list
list_1 = [1, 2.0, 3, 4]
array_1 = np.array(list_1)
print(array_1)

array_2 = np.array([list_1, list_1])
print(array_2)

shape = array_2.shape
print(shape)

size = array_2.size
print(size)

dtype = array_2.dtype
print(dtype)

array_3 = np.arange(1, 10, 2)
print(array_3)

print(np.zeros(5))

print(np.zeros([2, 3]))

# 单位矩阵
print(np.eye(5))

a = np.arange(1, 10)
print(a[1:5])

b = np.array([[1, 2, 3], [4, 5, 6]])
print(b[1][0], b[1, 0])

c = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
# 第一个切的是行的范围,第二个切的是列的范围
print(c[:2, 1:])

"""快速创建数组"""
# randn符合标准的正态分布
print(np.random.randn(10))

print(np.random.randint(10, size=(2, 3)))
print(np.random.randint(10, size=6).reshape(2, 3))

"""数组的运算"""
a = np.random.randint(10, size=20).reshape(4, 5)
b = np.random.randint(10, size=20).reshape(4, 5)
print(a + b)
print(a - b)
print(a * b)
print(a / b)

"""矩阵的创建"""
print(np.mat([[1, 2, 3], [4, 5, 6]]))
print(np.mat(a))

"""矩阵的运算"""
A = np.mat(a)
B = np.mat(b)
print(A + B)
print(A - B)
# print(A*B) error 行数和列数需要满足数学定理

"""Array常用函数"""
a = np.random.randint(10, size=20).reshape(4, 5)
# 返回数组中唯一的值(就是数组中有哪些数,重复的不算)

print(np.unique(a))

# 返回每一行的和
print(sum(a))
# 返回具体第1行的和第1列的和
print(sum(a[0]), sum(a[:, 0]))

print(a.max())
print(max(a[0]))
print(max(a[:, 0]))

"""使用pickle序列化numpy array"""
import pickle

x = np.arange(10)
f = open('x.pkl', 'wb')
pickle.dump(x, f)

f = open('x.pkl', 'rb')
print(pickle.load(f))

"""numpy提供的序列化模块"""
np.save('one_array', x)
print(np.load('one_array.npy'))

y = np.arange(20)
np.savez('two_array.npz', a=x, b=y)
c = np.load('two_array.npz')
print(c['a'])
print(c['b'])
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  numpy 机器学习
相关文章推荐