Python读取.data数据:使用Pandas的DataFrame:
import pandas as pd
df = pd.read_csv('hayes-roth.data',header=None)
将df转np数据:
import numpy as np
df_1 = np.array(df)
np.argmin(array,axis=1)#axis=1 表示求出每行的最小值的下标
np.random.choice()
import random
random.uniform(a,b)#随机生成一个实数,它在 [a,b] 范围内
random.sample(population, k),多用于截取列表的指定长度的随机数,但是不会改变列表本身的排序
np.tile(A,B)
#将A重复B次数,B可以是int型,也可以是元组(a,b)
#例如:
mat = array([[1,2], [3, 4]])
tile(mat, (1, 4))
# 等同于
tile(mat, 4)
np.any()
np.all(a, axis=None, out=None, keepdims=<no value>, *, where=<no value>)
#返回值是布尔值
主要的作用是对DataFrame数据,进行数据的分组以及分组后的组内运算
pd.DataFrame(set).groupby(minDisindex).mean()#这是分组后还进行了组内均值计算
for i,j in enumerate(minDistIndices):#enumerate()可同时遍历索引和遍历元素
enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时输出数据下标和数据
排序:sort()、sorted()、argsort() (2022.5.19.ipynb)
sort() 只是列表的一个方法,只适用于列表,而sorted() 函数接受一切迭代器,返回新列表。
a.sort()会改变原有列表,如果想要保留原本的结构,就使用sorted()
sorted()可以对各种数据结构进行排序:
字典:
多维列表:
使用operator模块中的 itemgetter() 可以实现根据多个参数排序:(传给key)
numpy模块中的argsort()函数:默认对数组进行由小到大排序,返回索引值。
np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等。
np.c_是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等。
np.max()、np.argmax()、np.maximum()、np.min()、np.argmin()、np.minimum()、np.sum()
参考:
https://blog.csdn.net/weixin_41560402/article/details/105277069
np.where
参考:
https://www.cnblogs.com/massquantity/p/8908859.html
np.where和np.argwhere、np.squeezehttps://blog.csdn.net/weixin_42338058/article/details/90813715
np.where与np.argwhere都是返回的条件的索引,只是结果的格式维度不一样
数组升维与降维
升:
降:数组.reshape(-1)