您的位置:首页 > 娱乐 > 明星 > 网络服务者_我的家乡湛江网站设计_厦门网站综合优化贵吗_搜索引擎关键词怎么优化

网络服务者_我的家乡湛江网站设计_厦门网站综合优化贵吗_搜索引擎关键词怎么优化

2025/2/24 3:27:36 来源:https://blog.csdn.net/qq_38473254/article/details/143350249  浏览:    关键词:网络服务者_我的家乡湛江网站设计_厦门网站综合优化贵吗_搜索引擎关键词怎么优化
网络服务者_我的家乡湛江网站设计_厦门网站综合优化贵吗_搜索引擎关键词怎么优化

文章目录

    • 1. 某一列中位数
    • 2. 统计某列的元素
    • 3. 统计某列的元素及出现次数
    • 4. 将某列进行相减操作
    • 5. 返回最大值所在的索引标签
    • 6. 统计某列中某词语出现的次数
    • 7. 定义每行的函数,然后将每行扩展到整个列表

运行以下单元格来加载您的数据和一些实用函数(包括用于检查答案的代码)。

import pandas as pd
pd.set_option("display.max_rows", 5)
reviews = pd.read_csv("../input/wine-reviews/winemag-data-130k-v2.csv", index_col=0)from learntools.core import binder; binder.bind(globals())
from learntools.pandas.summary_functions_and_maps import *
print("Setup complete.")reviews.head()

在这里插入图片描述

1. 某一列中位数

reviews DataFrame points列的中位数是多少?

median_points = reviews.points.median()

2. 统计某列的元素

数据集中代表了哪些国家/地区? (您的答案不应包含任何重复项。)

countries = reviews.country.unique()

在这里插入图片描述

3. 统计某列的元素及出现次数

每个国家/地区在数据集中出现的频率是多少?创建一个 Series reviews_per_country ,将国家/地区映射到该国家/地区的葡萄酒评论数量。

reviews_per_country = reviews.country.value_counts()

在这里插入图片描述

4. 将某列进行相减操作

创建变量centered_price其中包含减去平均价格的price列版本。

(注意:这种“居中”转换是应用各种机器学习算法之前的常见预处理步骤。)

centered_price = reviews.price - reviews.price.mean()

5. 返回最大值所在的索引标签

我是一个经济实惠的葡萄酒买家。哪种酒是“最划算的”?使用数据集中积分价格比最高的葡萄酒的标题创建一个变量bargain_wine 。

points-to-price ratio:points/price

bargain_idx = (reviews.points / reviews.price).idxmax()
bargain_wine = reviews.loc[bargain_idx, 'title']

在这里插入图片描述idxmax()

idxmax()是 Pandas 中的一个方法,用于返回最大值所在的索引标签(而不是值本身)。它通常用于 Series 或DataFrame,以帮助快速定位最大值的位置。

用法:
对于 Series:返回最大值所在的索引。
对于 DataFrame:可以指定列,返回每列最大值所在的索引。
Series.idxmax()
DataFrame.idxmax(axis=0)

  • axis=0:对每列进行操作(默认值),返回每列最大值的行索引。
  • axis=1:对每行进行操作,返回每行最大值的列索引。
    在这里插入图片描述

6. 统计某列中某词语出现的次数

在描述一瓶酒时,你只能使用这么多的词语。葡萄酒更有可能是“热带”还是“果味”?创建一个Series descriptor_counts计算这两个单词在数据集中的description列中出现的次数。 (为简单起见,我们忽略这些单词的大写版本。)

提示:使用地图检查字符串tropical的每个描述,然后计算为True的次数。对fruity重复此操作。最后,创建一个组合这两个值的Series 。

n_trop = reviews.description.map(lambda desc: "tropical" in desc).sum()
n_fruity = reviews.description.map(lambda desc: "fruity" in desc).sum()descriptor_counts = pd.Series([n_trop, n_fruity], index=['tropical', 'fruity'])

在这里插入图片描述

reviews.description:这是一个 Pandas Series,假设包含文本描述。
map(lambda desc: "tropical" in desc):
使用 map 方法遍历 description 列中的每个元素 desc,并检查字符串"tropical" 是否在该描述中。lambda desc: “tropical” in desc 会为每个描述返回一个布尔值(True或 False)。 .sum():对 map 结果进行求和,因为 True 相当于 1,False 相当于 0,所以 sum()的结果就是包含 “tropical” 关键字的描述的数量。

lambda 函数是 Python中的一种匿名函数,也叫作“快速定义函数”。它可以在无需正式定义函数名称的情况下,创建一个小的、单行的函数。通常用于在需要简单操作的场景下,以简洁的方式表达函数逻辑。

python lambda 参数: 表达式

  • 参数:输入的一个或多个参数,多个参数用逗号分隔。
  • 表达式:返回的值,一般是对参数的某种操作。
    在这里插入图片描述

map() 是 Python内置的高阶函数,用于将一个指定的函数应用到一个可迭代对象(如列表、元组)中的每个元素,并返回一个新的迭代器,其中包含应用函数后的结果。
map(function, iterable)

  • function:要应用的函数,可以是一个内置函数、自定义函数,或者 lambda 表达式。
  • iterable:可迭代对象,如列表、元组、字符串等。
    在这里插入图片描述

7. 定义每行的函数,然后将每行扩展到整个列表

我们希望在我们的网站上发布这些葡萄酒评论,但从 80 到 100 分的评级系统太难理解 - 我们希望将它们转化为简单的星级评级。 95 分或以上为 3 星,85 分以上但低于 95 分为 2 星。任何其他分数均为 1 星。

此外,加拿大葡萄酒商协会在该网站上购买了大量广告,因此任何来自加拿大的葡萄酒都应该自动获得 3 星,无论分数如何。

创建一个系列star_ratings其中包含与数据集中每条评论相对应的星星数量。

# 得分points
# >=95: 3
# >=85: 2
# else: 1# 国家country
# Canada: 3# 定义每行的函数,然后将每行扩展到整个列表def stars(row):if row.country == 'Canada':return 3elif row.points >= 95:return 3elif row.points >= 85:return 2else:return 1reviews.apply(stars, axis='columns')
# Series(data=None, index=None, dtype: Dtype | None=None, name=None, copy: bool | None=None, fastpath: bool | lib.NoDefault=lib.no_default)
star_ratings = reviews.apply(stars, axis='columns')

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com