翼度科技»论坛 编程开发 python 查看内容

pandas笔记(一)-- 大的国家(逻辑索引、切片)

6

主题

6

帖子

18

积分

新手上路

Rank: 1

积分
18
题目描述

如果一个国家满足下述两个条件之一,则认为该国是 大国

  • 面积至少为 300 万平方公里
  • 人口至少为 2500 万
    编写解决方案找出大国的国家名称、人口和面积
    任意顺序返回结果表,如下例所示
测试用例

输入:
namecontinentareapopulationgdpAfghanistanAsia6522302550010020343000000AlbaniaEurope28748283174112960000000AlgeriaAfrica238174137100000188681000000AndorraEurope468781153712000000AngolaAfrica124670020609294100990000000输出
namepopulationareaAfghanistan25500100652230Algeria371000002381741解析

本题考查pandas的索引操作,属于基础题(最基础的那种),基本思路就是先筛选,后切片
  1. import pandas as pd
  2. def big_countries(world: pd.DataFrame) -> pd.DataFrame:
  3.     df:pd.DataFrame = world[(world["area"]>=3000000)|(world["population"]>=25000000)]
  4.     return df[["name", "population", "area"]]
复制代码
注意在提取pd.Dataframe时需使用双方括号
也可以使用pandas自带的loc函数进行简化
  1. import pandas as pd
  2. def big_countries(world: pd.DataFrame) -> pd.DataFrame:
  3.   return world.loc[(world['area'] >= 3000000) | (world['population'] >= 25000000), ['name', 'population', 'area']]
复制代码
小白一枚,于今日正式开通个人博客,特此纪念,在此祝愿园子越办越好

来源:https://www.cnblogs.com/KevinScott0582/p/18056257
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具