Python pandas(DataFrame)学习笔记3

1.按列取、按索引/行取、按特定行列取

import numpy as np
import pandas as pd
 
df=pd.DataFrame(np.arange(12).reshape((3,4)),index=['one','two','three'],columns=list('abcd'))
print(df)

在这里插入图片描述

print("{:-^20}".format("取a列:"))
print(df[['a']])
print(df['a'])
print("{:-^20}".format("取a,b列:"))
print(df[['a','b']])

在这里插入图片描述

# loc只能通过index和columns来取,不能用数字
print("{:-^20}".format("取行,列:"))
print(df.loc['one':'two','a':'c'])

# iloc只能用数字索引,不能用索引名
print(df.iloc[0:2,0:2])  #0、1行,0、1列

#iat取某个单值,只能数字索引
print(df.iat[1,1])  #第2行,2列

#at取某个单值,只能index和columns索引
print(df.at['one','a'])   #one行,a列

在这里插入图片描述
2.按条件取行

df=pd.DataFrame(np.arange(12).reshape((3,4)),index=['one','two','three'],columns=list('abcd'))
print(df)
print('\n')

# 选取等于某些值的行记录 用 ==
print(df.loc[df['a'] == 4])
print('\n')

# 选取不等于某些值的行记录 用 !=
print(df.loc[df['a'] != 4])
print("\n")

# 选取某列是否是某一类型的数值 用 isin
print(df.loc[df['a'].isin([4])])
print("\n")

# isin返回一系列的数值,如果要选择不符合这个条件的数值使用~
print(df.loc[~df['a'].isin([4])])
print("\n")

# 多种条件的选取 用 &
print(df.loc[(df['a'] == 4) & df['b'].isin([4])])

在这里插入图片描述
3.取完之后替换

df = pd.DataFrame({"id": [25,53,15,47,52,54,45,9],
                   "sex": list('mfmfmfmf'),
                   'score': [1.2, 2.3, 3.4, 4.5,6.4,5.7,5.6,4.3],
                   "name":['daisy','tony','peter','tommy','ana','david','ken','jim']})
print(df)

在这里插入图片描述
将男性(m)替换为1,女性(f)替换为0
方法1:

df.loc[df['sex']=='f','sex']=0
df.loc[df['sex']=='m','sex']=1
print(df)

在这里插入图片描述
注:在上面的代码中,逗号后面的‘sex’起到固定列名的作用

方法2:

print(df['sex']=='m')
df.sex[df['sex']=='m']= 1

df.sex[df['sex']=='f']= 0
print(df)

在这里插入图片描述
4.删除特定行

# 要删除列“score”<50的所有行:
df = df.drop(df[df.score < 50].index)
# 或者 
df.drop(df[df.score < 50].index, inplace=True)
 
# 多条件情况
# 可以使用操作符: | 只需其中一个成立, & 同时成立, ~ 表示取反,它们要用括号括起来。
# 例如删除列“score<50 和>20的所有行
df = df.drop(df[(df.score < 50) & (df.score > 20)].index)

参考文章地址:https://www.cnblogs.com/nxf-rabbit75/p/10105271.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这篇笔记主要介绍了Pandas模块的基本操作和使用方法。PandasPython中一个用于数据分析和处理的常用库,提供了高效的数据结构和数据分析工具,是进行数据处理和数据挖掘的重要工具之一。 一、Pandas数据结构 Pandas主要有两种数据结构:Series和DataFrame。 1. Series Series是一种类似于一维数组的对象,由一组数据和一组与之相关的标签(即索引)组成。Series的创建方式如下: ```python import pandas as pd # 通过列表创建Series s = pd.Series([1, 3, 5, np.nan, 6, 8]) # 通过字典创建Series s = pd.Series({'a': 1, 'b': 2, 'c': 3}) ``` 2. DataFrame DataFrame是一种二维表格数据结构,由一组数据和一组行索引和列索引组成。DataFrame的创建方式有很多种,最常用的是通过字典创建。例如: ```python import pandas as pd data = {'name': ['Tom', 'Jerry', 'Mike'], 'age': [18, 20, 22], 'gender': ['M', 'M', 'F']} df = pd.DataFrame(data) ``` 二、Pandas的基本操作 1. 数据读取 Pandas可以读取多种格式的数据文件,如CSV、Excel、SQL等。常用的读取CSV文件的方式如下: ```python import pandas as pd df = pd.read_csv('data.csv') ``` 2. 数据预处理 数据预处理是数据挖掘中非常重要的一部分,Pandas提供了很多方便的函数和方法来进行数据清洗和转换。常用的数据预处理函数和方法有: - 处理缺失值 ```python # 判断是否存在缺失值 df.isnull() # 删除缺失值 df.dropna() # 填充缺失值 df.fillna(value) ``` - 处理重复值 ```python # 删除重复值 df.drop_duplicates() ``` - 数据转换 ```python # 数据类型转换 df.astype() # 数据替换 df.replace() ``` 3. 数据分析 Pandas提供了各种数据分析和处理的方法和函数,常用的包括: - 统计函数 ```python # 计算平均值 df.mean() # 计算标准差 df.std() # 计算最大值和最小值 df.max(), df.min() ``` - 排序 ```python # 按照某列排序 df.sort_values(by='column_name') ``` - 数据聚合 ```python # 对某列数据进行分组求和 df.groupby('column_name').sum() ``` 以上是Pandas模块的基础内容,还有很多高级用法和技巧需要进一步学习和掌握。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值