头歌python NumPy数组的高级操作
·
第1关:堆叠操作
任务描述
本关任务:根据本关所学知识,实现均值统计功能。编程要求
根据本关所学知识,补充完成get_mean(featur1, feature2)函数,其中:feature1:待hstack的ndarray;
feature2:待hstack的ndarray;
返回值:类型为ndarray,其中值为hstack后每列的平均值;
import numpy as np
def get_mean(feature1, feature2):
'''
将feature1和feature2横向拼接,然后统计拼接后的ndarray中每列的均值
:param feature1:待`hstack`的`ndarray`
:param feature2:待`hstack`的`ndarray`
:return:类型为`ndarray`,其中的值`hstack`后每列的均值
'''
#********* Begin *********#
result = np.hstack((feature1,feature2))
return np.mean(result,axis=0)
#********* End *********#
第2关:比较、掩码和布尔逻辑
任务描述
本关任务:编写一个能比较并筛选数据的程序。编程要求
请在右侧编辑器Begin-End处补充代码,根据输入的数据筛选出大于num的值。具体要求请参见后续测试样例。
import numpy as np
def student(num,input_data):
result=[]
# ********* Begin *********#
a = np.array(input_data)
result = a[a>num]
# ********* End *********#
return result
第3关:花式索引与布尔索引
任务描述
本关任务:根据本关所学知识,过滤大写字母。编程要求
请在右侧编辑器Begin-End处补充代码,根据函数参数input_data过滤出所有的大写字母。具体要求请参见后续测试样例。
import numpy as np
def student(input_data):
result=[]
#********* Begin *********#
a = np.array(input_data)
result = a[(a>='A') & (a<='Z')]
# ********* End *********#
return result
第4关:广播机制
任务描述
本关任务:利用广播机制实现Z-score标准化。编程要求
请在右侧编辑器Begin-End处补充代码,将输入数据转换为array并计算它们的和。具体要求请参见后续测试样例。
import numpy as np
def student(a,b,c):
result=[]
# ********* Begin *********#
a = np.array(a)
b = np.array(b)
c = np.array(c)
result = a+b+c
# ********* End *********#
return result
第5关:线性代数
任务描述
本关任务:编写一个能求解线性方程的函数。
编程要求
请在右侧编辑器Begin-End处补充代码,计算性别为男的线性方程解,前两个数为方程左边,最后一个数为方程右边。具体要求请参见后续测试样例。
from numpy import linalg
import numpy as np
def student(input_data):
'''
将输入数据筛选性别为男,再进行线性方程求解
:param input_data:类型为`list`的输入数据
:return:类型为`ndarray`
'''
result=[]
# ********* Begin *********#
x = []
y = []
a = np.array(input_data)
for i in a:
if i[0]=='男':
x.append([int(i[1]),int(i[2])])
y.append([int(i[-1])])
if x==[] and y==[]:
return result
x = np.array(x)
y = np.array(y)
result = linalg.solve(x,y)
# ********* End *********#
return result
更多推荐
所有评论(0)