【发布时间】:2017-11-23 12:14:44
【问题描述】:
我有一个包含变量 Credit_History(0 或 1)和 Loan_Status(Y 或 N)的数据框。 Temp1 只显示我标记为 0 或 1 的行数。Temp2 是我要将 Y 或 N 编码为 0 或 1 的位置,然后对其进行平均。
temp1 = df['Credit_History'].value_counts(ascending=True)
temp2 = df.pivot_table(values='Loan_Status',index=
['Credit_History'],aggfunc=lambda x: x.map({'Y':1,'N':0}).mean())
print ('Frequency Table for Credit History:')
print (temp1)
print ('\nProbility of getting loan for each Credit History class:')
print (temp2)
当我绘图时,我希望有一个 1 行 x 2 列的区域。但它看起来像一个包含 3 个图的 2 行 x 2 列区域。 Temp2 被绘制了 2 次,但除了轴标题之外,其中一个是空白的。我假设我在创建 temp2 对象时声明了一些错误...enter image description here
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(12,4))
ax1 = fig.add_subplot(121)
ax1.set_xlabel('Credit_History')
ax1.set_ylabel('Count of Applicants')
ax1.set_title('Applicants by Credit_History')
temp1.plot(kind='bar')
ax2 = fig.add_subplot(122)
temp2.plot(kind = 'bar')
ax2.set_xlabel('Credit_History')
ax2.set_ylabel('Probability of getting loan')
ax2.set_title('Probability of getting loan by credit history')
【问题讨论】:
标签: python pandas plot pivot pivot-table