我正在研究Python的练习题,这要求我找到数组的最小值,最大值和中值,而不是在构造盒子图时使用这些值。我正在使用数组“valid_opening_duration_list”,并希望将其转换为我可以用于箱图的形式,但我遇到了一些问题。
import statistics
import numpy as np
import matplotlib.pyplot as plt
print("Maximum Opening Duration is", max(valid_opening_duration_list))
print("Minimun Opening Duration is", min(valid_opening_duration_list))
print('The Median Opening Duration is', statistics.median(valid_opening_duration_list))
scores = valid_opening_duration_list(loc=5, size=100)
fig, ax = plt.subplots(figsize=(7, 5))
ax.boxplot(scores, 0, labels=['Prac test'])
ax.set_ylabel('Scores', fontsize=16)
ax.set_title('Score BoxPlot', fontsize=16)
该程序告诉我它无法调用该对象。有什么方法可以解决这个问题吗?
TypeError Traceback (most recent call last)
<ipython-input-198-a2257e98b110> in <module>()
11 print('The Median Opening Duration is', statistics.median(valid_opening_duration_list))
12
---> 13 scores = valid_opening_duration_list(loc=5, size=100)
14
15 fig, ax = plt.subplots(figsize=(7, 5))
TypeError: 'numpy.ndarray' object is not callable
答案 0 :(得分:0)
您正在尝试将numpy数组作为函数调用,因此会收到该错误。
因为您正在尝试将valid_opening_duration_list的内容复制到分数。您想使用numpy.copy函数。
将第13行更改为
scores = np.copy(valid_opening_duration_list)
这会将valid_opening_duration_list的内容复制到分数。