我正在分析FreeCodeCamp 2016年的调查数据。https://github.com/freeCodeCamp/2016-new-coder-survey
特别是2016年新编码器调查/清洁数据/2016年FCC新编码器调查-数据.csv你知道吗
我通过将净推荐量(差值)除以每个x值(年龄)的总推荐量(推荐量之和)来规范化绘图。你知道吗
对于一些年龄段的人来说,建议是零,因此我最终被零除,得到零分错误。我已经找到办法了。但是为了学习,我怎样才能用if语句解决这个问题呢?你能解释一下下面的代码有什么问题吗?你知道吗
这里只是我所有的变量,包括完整性。你知道吗
data_file = pd.read_csv('FCC_New_Coders_Survey_Data.csv', dtype={'AttendedBootcamp': float, 'CodeEventOther': object, 'JobRoleInterestOther': object})
AttendedBootcamp = data_file['AttendedBootcamp']
BootcampFullJob = data_file['BootcampFullJobAfter']
BootcampRecommend = data_file['BootcampRecommend']
Age = data_file['Age']
JobYes = data_file[data_file.BootcampFullJobAfter == 1]
JobNo = data_file[data_file.BootcampFullJobAfter == 0]
RecYes = data_file[data_file.BootcampRecommend == 1]
RecNo = data_file[data_file.BootcampRecommend == 0]
RecYesJobYes = data_file[data_file.BootcampRecommend == 1][data_file.BootcampFullJobAfter == 1 ]
RecNoJobYes = data_file[data_file.BootcampRecommend == 0][data_file.BootcampFullJobAfter == 1 ]
RecYesJobNo = data_file[data_file.BootcampRecommend == 1][data_file.BootcampFullJobAfter == 0 ]
RecNoJobNo = data_file[data_file.BootcampRecommend == 0][data_file.BootcampFullJobAfter == 0 ]
这里是我失败的代码
numerator = [len(RecYesJobYes[RecYesJobYes.Age == i]) - len(RecNoJobYes[RecNoJobYes.Age == i]) for i in range(16, 60)]
denomerator = [len(RecYesJobYes[RecYesJobYes.Age == i]) + len(RecNoJobYes[RecNoJobYes.Age == i]) for i in range(16, 60)]
下面是我对异常处理的尝试
try:
bananasplit = [int(m) / int(b) for b,m in zip(denomerator, numerator)]
except ZeroDivisionError:
b = 1 in denomerator
这是我的if语句
for b in [int(m) / int(b) for b,m in zip(denomerator, numerator)][:]:
if ZeroDivisionError:
b = 1 in denomerator
您可以在列表中这样使用if/else(技术上我们使用的是三元运算符):
如果要使用异常处理,应使用循环而不是列表:
相关问题 更多 >
编程相关推荐