在这篇文章中,我们总结了Pandas的5个技巧。我希望这些技巧能帮助你完成日常的任务,并为你节省很多时间。
代码:https://github.com/kunalj101/Data-Science-Hacks/blob/master/Code/Pandas_conditional_formatting.ipynb
import pandas as pd data = pd.read_excel("../Data/salesman_performance.xlsx") data data.style def highlight_green(sales): color = 'green' if sales > 80 else 'black' return 'color: %s' % color formatting = data.iloc[:,1:6].style.applymap(highlight_green) formatting
视频:https://youtu.be/vuirWysk_BA
虽然Pandas提供了大量的操作,但我将在这里向你展示一个简单的操作。例如,我们有对应于每个销售人员的销售数据。我想查看的是销售价值高于80的。
可以使用Pandas的style属性将条件格式应用于数据框。事实上,条件格式是根据某种条件对数据帧应用视觉样式的操作。
这是我最喜欢的Pandas技巧之一。这个技巧让我有能力直观地定位特定条件下的数据。
代码:https://github.com/kunalj101/Data-Science-Hacks/blob/master/Code/map%20python.ipynb
#样本数据 data = {'name': ['A', 'B', 'C', 'D', 'E'], 'age': [22, 26, 33, 44, 50], 'profession' : ['data engineer', 'data scientist', 'entrepreneur', 'business analyst', 'self-employed'], 'city': ['Gurgaon', 'Bangalore', 'Gurgaon', 'Pune', 'New Delhi']} df = pd.DataFrame(data) df # 城市与州 map_city_to_states = { 'Gurgaon' : 'Haryana', 'Bangalore' : 'Karnataka', 'Pune' : 'Maharashtra', 'New Delhi' : 'Delhi'} # 将城市列映射为州 df['state'] = df['city'].map(map_city_to_states) df
视频:https://youtu.be/XkwQOy5RZWY
现在需要添加另一列,说明相应的状态。你会怎么做?如果数据集的范围是10行,你可以手动执行,但是如果有数千行呢?使用Pandas map会更有利。
让我们举一个有趣的例子。我们有一个虚拟的雇员数据集。此数据集由以下列组成–姓名、年龄、职业、城市。
Pandas map()用于根据输入对应关系将序列中的每个值映射到其他值。实际上,这个输入可以是一个序列、字典,甚至是一个函数。
map是另一个提供高度灵活性和实际应用的重要操作。
代码:https://github.com/kunalj101/Data-Science-Hacks/blob/master/Code/groupby_in_pandas.ipynb
#导入数据集 import pandas as pd df = pd.read_csv('../Data/loan_train.csv') df.head() # 男女平均收入 df.groupby(['Gender'])[['ApplicantIncome']].mean() # 平均贷款金额不同的财产地区,如城市,农村 df.groupby(['Property_Area'])[['LoanAmount']].mean() # 比较不同教育背景的贷款状况 df.groupby(['Education'])[['Loan_Status']].count()
视频:https://youtu.be/fK-6ZlPvZYU
嗯,Pandas的groupby可以非常有效地解决这个问题。首先根据属性区域划分数据。其次,我们将mean()函数应用于每个类别。最后,我们将它们组合在一起,并将其打印为新的数据帧。
让我们再看一次贷款预测数据集,假设我想看看给来自不同财产领域的人的平均贷款额,比如农村、半城市和城市。花点时间来理解这个问题陈述并思考如何解决它。
Groupby操作包括根据特定条件拆分对象,应用函数,然后组合结果。
这种操作在数据科学家和分析师的日常生活中经常执行。Pandas提供了一个基本的函数来执行数据分组,即Groupby。
代码:https://github.com/kunalj101/Data-Science-Hacks/blob/master/Code/binning_data.ipynb
import pandas as pd df = pd.read_csv('titanic.csv') from sklearn.utils import shuffle # 随机化 df = shuffle(df, random_state = 42) df.head() bins = [0,4,17,65,99] labels =['Toddler','Child','Adult','Elderly'] category = pd.cut(df['Age'], bins = bins, labels = labels) df.insert(2, 'Age Group', category) df.head() df['Age Group'].value_counts() df.isnull().sum()
视频:https://youtu.be/WQagYXIFjns
为了执行Binning,我们使用cut()函数。这对于从连续变量到离散变量非常有用。
例如,你的数据中有一个连续变量,年龄。但你需要一个年龄组来进行分析,比如儿童、青少年、成人、老年人。实际上,Binning非常适合解决我们这里的问题。
数据可以有两种类型-连续的和离散的,这取决于我们的分析要求。有时我们不需要连续变量中的精确值,但需要它所属的群体。
注意:记住把每个条件放在括号内。
import pandas as pd data = pd.read_csv('../Data/loan_train.csv') data.head() data2 = data.loc[(data['Education'] == 'Not Graduate') & (data['ApplicantIncome'] <= 5400)] data2
视频:https://youtu.be/hc4or_RF5M8
我们将挑选一排还没有毕业、收入低于5400英镑的客户。让我们看看我们该怎么做。
例如,我使用一个关于贷款预测的数据集。
行的条件选择可以基于由逻辑运算符分隔的单个语句中的单个条件或多个条件。
首先,数据探索是必要步骤。Pandas为进行各种分析提供了一种快速简便的方法。其中一个非常重要的技巧是根据条件选择行或过滤数据。
音响iPhone和耳机:iPhone 13款款音频体验升级
iPhone 13 是苹果公司于 2021 年 9 月发布的智能手机,作为 iPhone 系列的下一代,iPhone 13 在外观和性能上都得到了全面提升。除了强大的硬件配置,iPhone 13 的音频体验也得到了升级。今天,让我们一起来了解一下 iPhone 13 款款音频体验升级的特点和优势。
一、音响 iPhone
iPhone 13 的音响系统采用了苹果公司自主研发的 A15 芯片,该芯片具有更强大的运算能力和更先进的制造工艺。在音频处理上,A15 芯片采用了全新的算法和架构,使得 iPhone 13 的音频表现更加出色。此外,iPhone 13 的音响系统还支持无线充电技术,用户可以轻松地将手机放置在充电桌上,无需担心数据线缠绕的问题。
iPhone 13 的音响表现最令人惊喜的地方是它的低音。苹果公司对音响系统的调教非常擅长,iPhone 13 的低音表现十分出色,可以给人强烈的视觉冲击。无论是观看电影、听音乐还是玩游戏,iPhone 13 的音响系统都能带来沉浸式的听觉体验。
二、耳机升级
除了 iPhone 13 的音响系统,耳机也是用户在使用 iPhone 时不可或缺的一部分。iPhone 13 的耳机采用了全新的设计,线条更加流畅,佩戴更加舒适。此外,iPhone 13 的耳机还支持无线充电技术,用户可以轻松地将耳机放置在充电桌上,无需担心数据线缠绕的问题。
在音响表现方面,iPhone 13 的耳机也表现出色。苹果公司对音响系统的优化算法进行了升级,使得 iPhone 13 的音乐表现更加出色。此外,iPhone 13 的耳机还支持主动降噪功能,能有效减少周围的噪声,让用户在任何环境下都能享受纯净的音乐。
三、其他功能
除了音响和耳机之外,iPhone 13 还有其他一系列功能,如高清拍照、5G 网络连接等,这些功能都为用户带来了更加便捷和丰富的体验。
综上所述,iPhone 13 在音响、耳机和其他一系列功能都得到了升级,使得用户在使用 iPhone 时可以更加便捷地享受优质的音乐和影像体验。可以说,iPhone 13 的音频体验在智能手机市场中具有很高的竞争力,为用户带来了更加出色的使用体验。