Pandas 深入学习【1】

numpy.where()

根据某个特征数据(如某列),筛选,把筛选出来的数据按条件赋给新数据列,列如

import pandas as pd
import numpy as np

# 读取数据集 1分
data = pd.read_csv("xxx.csv")

# 创建新列'newcolumn',根据某列值判断生成新的列
data['newcolumn'] = np.where(data['onecolumn'] > xx, 'a', 'b')

value_couns()

查看数据表中,指定列里有多少个不同的数据值: 可以用value_couns(),它可以计算每个不同值有在该列中的个数,同时还能根据需要进行排序。

sort=True: 是否要进行排序;默认进行排序
ascending=False: 默认降序排列;
normalize=False: 是否要对计算结果进行标准化并显示标准化后的结果,默认是False。
bins=None: 可以自定义分组区间,默认是否;
dropna=True:是否删除缺失值nan,默认删除

value_counts(values,sort=True, ascending=False, normalize=False,bins=None,dropna=True)

pandas.cut()

数据分箱函数,将数据进行按给定的不同的区间值进行分类,例如:

# 使用 cut 函数将年龄分割成区间
bins = [0, 18, 35, 60, 100]
labels = ['少年', '青年', '中年', '老年']
categories = pd.cut(data['Age'], bins, labels=labels)

# 使用 cut 函数将年龄分割成区间
bins = [0, 18, 35, 60, 100, np.inf]
labels = ['少年', '青年', '中年', '老年']
categories = pd.cut(data['Age'], bins, labels=labels, right=False)

bins:分类依据的标准,可以是int、标量序列或间隔索引(IntervalIndex)

right:是否包含

bins区间的最右边,默认为True,最右边为闭区间,False则不包含 labels:要返回的标签,和bins的区间对应

data['column'].mean()

 计算每组数的平均值

data['column'].unstack() 

将结果转换为更易读的表格形式

data['column'].fillna()

 填补缺失值

data['Value'].fillna(method='ffill', inplace=True), 使用前向填充(forward fill)方法填补缺失值(NaN),用前一个有效值填充后面的缺失值,inplace=True 表示直接修改原 DataFrame


data['Value'].fillna(method='bfill', inplace=True),使用后向填充(backward fill)方法填补剩余的缺失值,用后一个有效值填充前面的缺失值,这样可以确保所有缺失值都被填补(如果开头有缺失值,ffill 无法处理)

missing_values = data.isnull().sum() 

统计缺失值,data.isnull() 检测 DataFrame 中的缺失值(NaN),返回布尔值 DataFrame
.sum() 计算每列的缺失值数量

duplicate_values = data.duplicated()

data.duplicated() 检测重复行,返回布尔值 Series

drop(columns=[...]) 删除指定列drop(columns=[...]) 删除指定列

dropna() 方法删除包含缺失值(NaN)的行

标准化公式:(原始值 - 平均值) / 标准差

data['col'] = (data['col'] - data['col'].mean()) /data['PurchaseAmount'].std()

对 col 列进行标准化(Z-score标准化, 标准化公式:(原始值 - 平均值) / 标准差
标准化是使数据均值为0,标准差为1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

☼←安于亥时→❦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值