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

4000 Numpy高级学习笔记

2018-03-20 15:07 225 查看
https://www.machinelearningplus.com/numpy-tutorial-python-part2/

1.根据条件找到数组中元素位置np.where(array+条件),再根据该位置取本身或其他数组对应位置的元素array.take:
index1=np.where(counts>2)
print(uniqs.take(index1),"has appeared more than 2 times")index1存储的是位置信息2.关掉科学计数法
np.set_printoptions(suppress=True) 读取csv文件使用基本的genfromtxt,注意文件路径格式,以及为了保证文本和数据都能显示出来,使dtype为None
path = 'E:/xuexiruanjian/text/MATLAB/company/first/newln.csv'
data = np.genfromtxt(path, delimiter=',', skip_header=1, dtype=None)中文显示,在file-setting-filEencoding三个都设为utf-8,再在最前面加
#encoding:utf-8在读文件的时候还是会出现\xd5\xfd\xb3\xa3,因为是文件读取时只能读出ASCII码,要读出中文,需要print或者decode(‘utf-8’)
a = '\xb3\xc2\xbd\xa8\xc3\xf4'
b = a.decode('gbk')
print b显示陈建敏3.



4.还是得多学习,以前让人头大的问题都是学到的最基本的
基于一列进行排序argsort:sorted_index_1stcol = arr[:, 0].argsort()
print("\n",arr[sorted_index_1stcol])根据第一列排序(由小到大)
print(arr[sorted_index_1stcol[::-1]])根据第一列逆序(由大到小)
基于两列及以上lexsort:
lexsorted_index = np.lexsort((arr[:, 1], arr[:, 0]))先根据第一列排,再根据第二列排(先根据后一个再是前一个)

如果对你有所帮助,谢谢您的鼓励^_^



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: