为啥画不出来啊,照着第二个图写的
为啥画不出来啊,照着第二个图写的
我不知道你是否要这样的结果,但是你的fwgt['hgt']我是不能理解的,你的标签里没有hgt这一项,下面我大概做了一下'Whole'的分布:
import numpy as np
import pandas as pd
import seaborn as sns
from scipy.stats import norm
import matplotlib.pyplot as plt
feature_names =['sex','Length','Diam','Height','Whole','Shucked','Viscera','Shell','Rings']
abalone_data = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/abalone/abalone.data', names = feature_names)
df=abalone_data
mwgt = df[df['Whole'] == 1]
fwgt = df[df['Whole'] == 0]
fwgtmean = fwgt['Whole'].mean()
fwgtsd = fwgt['Whole'].std()
fght_hist = sns.distplot(df['Whole'], norm_hist=True, kde=True, color='purple', bins=110)
x = np.arange(0, 1)
y = norm.pdf(x, loc=fwgtmean, scale=fwgtsd)
fght_hist.plot(x, y, 'purple')
plt.show()
如果你觉着有用,请采纳,谢谢!
报错说数值引起的错误。看一下前文你测试的数据
你出错的应该是x = np.arange(0, 1),也就是说x只有一个值,还是0, 如果两个图的数据量相同,你改正这个:
x = np.arange(0, 51)
也许就可以。
如果有帮助,请采纳,谢谢!
哈喽,日志说distplot将被弃用,让你用histplot哦
代码
import numpy as np
import pandas as pd
feature_names =['sex','Length','Diam','Height','Whole','Shucked','Viscera','Shell','Rings']
abalone_data = pd.read_csv('https://archive.ics.uci.edu/ml/machine-learning-databases/abalone/abalone.data', names = feature_names)
df=abalone_data
df.head()
mwgt = df[df['Whole'] == 1]
fwgt = df[df['Whole'] == 0]
fwgtmean = fwgt['Whole'].mean()
fwgtsd = fwgt['Whole'].std()
import seaborn as sns
from scipy.stats import norm
import matplotlib.pyplot as plt
%matplotlib inline
plt.rcParams['figure.figsize'] = (6, 6)
fwgt_hist = sns.distplot(fwgt['hgt'], norm_hist = True, kde = False, color = 'purple', bins = 8)
x = np.arange(0,1)
y = norm.pdf(x, loc = fwgtmean, scale = fwgtsd)
fwgt_hist.plot(x, y, 'purple');