当前位置: 首页 > news >正文

【Kaggle | Pandas】练习2:索引,选择和分配

文章目录

  • 数据总表
    • 1、读取列
    • 2、读取某列的第几行的值
    • 3、第一行数据
    • 4、读取列中前10个值
    • 5、读取索引标签为1 、 2 、 3 、 5和8的记录
    • 6、包含索引标签为0 、1 、10和100的记录的country 、province 、 region_1和region_2列
    • 7、 前 100 条记录的country和variety列
    • 8、包含Italy葡萄酒评论的 DataFrame italian_wines
    • 9、包含来自澳大利亚或新西兰的葡萄酒的至少 95 分(满分 100 分)的所有评论

数据总表

reviews.head()

在这里插入图片描述

1、读取列

从reviews中选择description列并将结果分配给变量desc

# Your code here
desc = reviews.description

2、读取某列的第几行的值

从reviews的描述列中选择第一个值,将其分配给变量first_description

first_description = desc.iloc[0]

3、第一行数据

从reviews中选择第一行数据(第一条记录),并将其分配给变量first_row

first_row = reviews.loc[0,:]

4、读取列中前10个值

从reviews中的description列中选择前 10 个值,将结果分配给变量first_descriptions

first_descriptions = reviews.description.iloc[:10]first_descriptions

在这里插入图片描述

5、读取索引标签为1 、 2 、 3 、 5和8的记录

选择索引标签为1 、 2 、 3 、 5和8的记录,并将结果分配给变量sample_reviews
在这里插入图片描述

sample_reviews = reviews.iloc[[1,2,3,5,8],:]sample_reviews

在这里插入图片描述

6、包含索引标签为0 、1 、10和100的记录的country 、province 、 region_1和region_2列

创建一个变量df其中包含索引标签为0 、 1 、 10和100的记录的country 、 province 、 region_1和region_2列。换句话说,生成以下 DataFrame
在这里插入图片描述

df = reviews.loc[[0, 1, 10, 100], ['country', 'province', 'region_1', 'region_2']]
df

在这里插入图片描述

# 官方代码
cols = ['country', 'province', 'region_1', 'region_2']
indices = [0, 1, 10, 100]
df = reviews.loc[indices, cols]

7、 前 100 条记录的country和variety列

创建一个变量df其中包含前 100 条记录的country和variety列。

提示:您可以使用loc或iloc 。在回答这个问题以及接下来的几个问题时,请保留教程中描述的以下“陷阱”:

iloc使用 Python stdlib 索引方案,其中包含范围的第一个元素并排除最后一个元素。同时, loc包含索引。

当 DataFrame 索引是一个简单的数字列表(例如0,…,1000时,这尤其令人困惑。在这种情况下df.iloc[0:1000]将返回 1000 个条目,而df.loc[0:1000]返回其中的 1001 个!要使用loc获取 1000 个元素,您需要降低一级并请求df.iloc[0:999] 。

# loc包含索引
df = reviews.loc[:99, ['country', 'variety']]
df

或者

# iloc不包含索引,且只能使用数字作为索引
# 不能使用该写法错误:df = reviews.iloc[:100, ['country', 'variety']]df = reviews.iloc[:100, [0, 11]]
df
  • iloc:基于位置索引选择
    iloc 是基于整数位置(即位置索引)来选择数据。
    适用于需要按行、列的数字位置索引进行定位的场景。
    索引从 0 开始,例如 iloc[0] 选择的是第一行。
  • loc:基于标签索引选择
    loc 是基于标签索引(即行或列的名称)来选择数据。
    适用于已知标签的场景,比如使用行名称或列名称来提取数据。

在这里插入图片描述
官方代码

cols = ['country', 'variety']
df = reviews.loc[:99, cols]
orcols_idx = [0, 11]
df = reviews.iloc[:100, cols_idx]

8、包含Italy葡萄酒评论的 DataFrame italian_wines

创建一个包含Italy葡萄酒评论的 DataFrame italian_wines 。提示: reviews.country等于什么?

italian_wines = reviews.loc[reviews.country == 'Italy']

9、包含来自澳大利亚或新西兰的葡萄酒的至少 95 分(满分 100 分)的所有评论

创建一个 DataFrame top_oceania_wines ,其中包含来自澳大利亚或新西兰的葡萄酒的至少 95 分(满分 100 分)的所有评论

top_oceania_wines = reviews.loc[((reviews.country == 'Australia') |  (reviews.country =='New Zealand')) & (reviews.points >= 95) ]
top_oceania_wines

在这里插入图片描述
官方代码

top_oceania_wines = reviews.loc[(reviews.country.isin(['Australia', 'New Zealand']))& (reviews.points >= 95)
]
http://www.lryc.cn/news/471232.html

相关文章:

  • 【flask】 flask redis的使用
  • 【Unity基础】Unity中的特殊文件夹详解
  • 矩阵蠕虫,陈欣出品
  • python 爬虫 入门 五、抓取图片、视频
  • ubantu 编译安装ceph 18.2.4
  • 哈希封装“unordered_set·map“
  • Bi-LSTM-CRF实现中文命名实体识别工具(TensorFlow)
  • 从JDK 17 到 JDK 21:Java 新特性
  • 【计算机网络 - 基础问题】每日 3 题(五十七)
  • 第十二章 章节练习created的应用
  • Unity 游戏性能优化实践:内存管理与帧率提升技巧
  • C++游戏开发详解
  • 三、大模型(LLMs)微调面
  • Flutter升级与降级
  • 分布式并发场景的核心问题与解决方案
  • D - Many Segments 2(ABC377)
  • 数组指针和指针数组的区别
  • 【VUE点击父组件按钮,跳转到子组件】
  • Java列表排序:方法与实践
  • 哈希及其封装实现unordermap和set
  • 在 AMD GPU 上构建解码器 Transformer 模型
  • Canvas简历编辑器-选中绘制与拖拽多选交互设计
  • 简单工厂(Simple Factory)
  • ffmpeg拉流分段存储到文件-笔记
  • Java 实习工资大概是多少?——解读影响薪资的因素
  • 【Linux】万字详解:Linux文件系统与软硬链接
  • spacenavd
  • C#WPF的XAML的语法详谈和特性
  • 一篇文章讲透数据结构之二叉搜索树
  • 新手入门c++(8)