NumPy进阶修炼80题|41-60
Python爬虫与数据挖掘
共 2439字,需浏览 5分钟
·
2020-07-28 17:44
回复“书籍”即可获赠Python从入门到进阶共10本电子书
本文是NumPy进阶修炼系列的第六篇
这种形式的题目对于读者来说,尤其是新手朋友们,很容易被我的思路带进去,实际上不论我的pandas还是numpy的习题,每一题都有多种解法,并且我的解法有时也并不是最佳方法,所以为了让大家多一点自己思考的时间,在numpy以及后面的其他系列习题中,我将换一种方式整理习题?
就像上图一样,我将同时发布两个Notebook版本习题,一份习题单独版,一份带有我的答案的单独版本,大家可以先试着在只有习题的版本中思考,写代码,并与我的答案对比,也欢迎给我提交不一样的答案!
好了,废话不多说,我们来看今天的20题,主要将涉及到用NumPy对矩阵的一些操作!
data = np.random.randint(1,100, [6,6])
np.amax(data, axis=0)
np.amin(data, axis=1)
np.unique(data,return_counts=True)
data.argsort()
np.repeat(data, 2, axis=0)
np.unique(data,axis = 0)
np.random.choice(data[0:1][0], 3, replace=False)
a = data[1:2]
b = data[2:3]
index=np.isin(a,b)
array=a[~index]
array
(~data.any(axis=1)).any()
data.sort(axis = 1)
data1 = data.astype(float)
思考:为什么不能在data本身转换
data1[data1 < 5] = np.nan
data1 = data1[~np.isnan(data1).any(axis=1), :]
vals, counts = np.unique(data1[0,:], return_counts=True)
print(vals[np.argmax(counts)])
a = 100
data1.flat[np.abs(data1 - a).argmin()]
data1 - data1.mean(axis=1, keepdims=True)
a = np.max(data1) - np.min(data1)
(data1 - np.min(data1)) / a
mu = np.mean(data1, axis=0)
sigma = np.std(data1, axis=0)
(data1 - mu) / sigma
np.savetxt('test.txt',data1)
以上就是本期20题的全部内容,欢迎思考与我不同的解法,你可以在早起Python后台回复numpy来获取Notebook的两种版本习题来练习,其实NumPy中的操作没有Pandas中的多变,所以全部大概在80题左右,本周会更新完毕,如果你也喜欢这种形式的习题可以给我点个在看,我们下期见。
------------------- End -------------------
往期精彩文章推荐:
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
/今日留言主题/
随便说一两句吧~~
评论