尝试使用 sqrt 方法生成箱大小的直方图。我做错了什么?我的代码在下面给了我错误。谢谢。
类型错误:"float"对象不能解释为整数
values = [1,5,2,8,5,11,24,30,50]
x = len(values)
binsizes = math.sqrt(x)
plt.hist(values, bins = binsizes)
plt.show()
math.sqrt(x)
返回一个浮点数。箱参数需要一个整数。您需要在某个时候将二进制转换为 int:
values = [1,5,2,8,5,11,24,30,50]
x = len(values)
binsizes = math.sqrt(x)
plt.hist(values, bins = int(binsizes))
plt.show()
在这里,您需要将math.sqrt设置为int,如果它不是设置为int,则总是会收到错误
n = np.zeros(bins, ntype) TypeError: 'float' 对象不能 解释为整数 在您的代码中,binsize 是浮点型,因此需要转换为 int
import math
import numpy as np
import matplotlib.pyplot as plt
values = [1,5,2,8,5,11,24,30,50]
x = len(values)
print(x)
binsizes = int(math.sqrt(x))
plt.hist(values, bins = binsizes)
plt.show()