Pandas_Task2_索引

索引总结

索引总结

习题

现有一份关于口袋妖怪的数据集,请解决下列问题:

在这里插入图片描述

1.7.2.5 (a)双属性的Pokemon占总体比例的多少?
1.7.2.6 (b)在所有种族值(Total)不小于580的Pokemon中,非神兽(Legendary=False)的比例为多少?
1.7.2.7 (c)在第一属性为格斗系(Fighting)的Pokemon中,物攻排名前三高的是哪些?
1.7.2.8 (d)请问六项种族指标(HP、物攻、特攻、物防、特防、速度)极差的均值最大的是哪个属性(只考虑第一属性,且均值是对属性而言)?
1.7.2.9 (e)哪个属性(只考虑第一属性)的神兽比例最高?该属性神兽的种族值也是最高的吗?

#(a)
df = pd.read_csv('data/Pokemon.csv')
df['Type 2'].count()/df.shape[0]

0.5175


#(b)
df[df['Total']>=580][df['Legendary']==False].shape[0] / df[df['Total']>=580].shape[0] #方式1
df.query('Total >= 580')['Legendary'].value_counts(normalize=True) #方式2,用query方法较简洁

True     0.575221
False    0.424779
Name: Legendary, dtype: float64


#(c)
df[df['Type 1']=='Fighting'].sort_values(by='Attack',ascending=False).iloc[:3]


#(d)
df['range'] = df.iloc[:,5:11].max(axis=1)-df.iloc[:,5:11].min(axis=1)
attribute = df[['Type 1','range']].set_index('Type 1')# 将Type1设为index
max_range = 0
result = ''
for i in attribute.index.unique(): #遍历所有Type1
    temp = attribute.loc[i,:].mean() #计算均值
    if temp.values[0] > max_range: #比较
        max_range = temp.values[0]
        result = i
result


#(e)
df.query('Legendary == True')['Type 1'].value_counts(normalize=True)

Psychic     0.215385
Dragon      0.184615
Fire        0.076923
Electric    0.061538
Ground      0.061538
Water       0.061538
Steel       0.061538
Rock        0.061538
Grass       0.046154
Ghost       0.030769
Ice         0.030769
Normal      0.030769
Flying      0.030769
Dark        0.030769
Fairy       0.015385
Name: Type 1, dtype: float64
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
pandas的to_excel方法是用于将数据保存到Excel文件中的方法。在给定的路径中创建一个Excel文件,并将DataFrame的内容写入到文件中的指定工作表中。例如,代码中的第5行使用pandas.ExcelWriter创建了一个ExcelWriter对象,然后第7行使用to_excel方法将csvReader的内容写入到excelWriter对象中的一个工作表中,这样就将数据保存为xlsx格式的文件了。 另外,pandas的to_csv方法是用于将数据保存到CSV文件中的方法。它将DataFrame对象的内容写入到一个以逗号分隔的文本文件中。在代码中,第3行使用to_csv方法将DataFrame对象csvReader的内容保存为csv文件,其中的index=None参数表示不保存索引。接着在第4行使用pd.read_csv方法读取这个csv文件中的内容并赋值给df2。 如果你想了解更多关于pandas的to_excel和to_csv方法的信息,你可以参考引用中提供的链接,该链接中详细介绍了如何使用这两个方法来导入和导出Excel文件和CSV文件。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [使用 Pandas 的 to_excel() 方法来将多个 csv 文件合并到一个 xlsx 的不同 sheets 内](https://blog.csdn.net/King7117/article/details/101800343)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [pandas数据存储读取read_csv(), to_csv(),read_excel(), to_excel()(常用方法,例子丰富)](https://blog.csdn.net/Light2077/article/details/102921032)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值