目录
numpy读取数据
import numpy as np
us_file_path = "./US_video_data_numbers.csv"
uk_file_path = "./GB_video_data_numbers.csv"
# 点击,喜欢,不喜欢,评论数量
t1 = np.loadtxt(us_file_path, delimiter=',', dtype="int", unpack=False)
# unpack=True,则将转置读入,unpack默认为False;文件内数据之间是逗号分隔的,所以delimiter=','
t2 = np.loadtxt(uk_file_path, delimiter=',', dtype="int")
print(t1)
print(t2)
# 取行 print(t2[2])
# 取连续多行 print(t2[2:]
# 取不连续的多行 print(t2[2,5,8])
# 取列 print(t2[1,:]) ==第2行(所有列)
# 逗号前面取行,逗号后面取列。冒号表示所有
# 取连续的多行多列 print(t2[2:,:]) # 第3行及之后的所有行列
# 取第一列 print(t2[:,1])
# 取连续的多列 print(t2[:,2:]) # 第3列之后的所有多行多列
# 取不连续的多列 print(t2[:,[0,2]) # 第1列和第3列
# 取第三行、第四列 print(t2[2,3])
# 取多行、多列 取d第3行-第5行,第2列到第4列,交叉点的位置
b = t2[2:5,1:4] # 区间总是左闭右开的
print(b)
# 取多个不相邻的点,(0,0)(2,1)(4,3)
c = t2[[0,2,4],[0,1,3]]
print(c)
# numpy中的布尔类型
a < 10
# 将数组内部<10者替换为0,>10者替换为10,引入三元运算符
np.where(a<10, 0, 10)
# 将数组内部<10者替换为0,>20者替换为20,引入clip(裁剪)
np.clip(10, 20)
# 10-20中间部分者不做替换,数组内部nan不做替换,因为nan是浮点类型,对数组操作之前先进行astype转换为float类型