【数据处理】Pandas读取CSV文件示例及常用方法(入门)

1. 导入常用包

import pandas as pd 
import numpy as np
import matplotlib.pyplot as plt
import datetime
%matplotlib inline

2. 文件读取

data = pd.read_csv('./xxxxxx_2010.1.1-2014.12.31.csv')

在这里插入图片描述

3. 查看有哪些列

data.columns

在这里插入图片描述

4. 查看前几行数据

data.head() # 默认前5行

在这里插入图片描述
查看读取前10行数据

data.head(10)

5. 查看数据信息

data.info()

在这里插入图片描述

6. 查看获取指定列的数据

data['pm2.5']  # 查看pm2.5该列的数据

在这里插入图片描述

7. 判断某列是否有None值

data['pm2.5'].isna() # 判断None值 返回布尔类型数据

在这里插入图片描述

8. 查看某列的None值数量

data['pm2.5'].isna().sum() # 查看None的数量

2067

9. 获取指定行的数据

data.iloc[24:] # 从24行到最后一行

10. 填补None值

向前填充

data.iloc[24:].fillna(method = 'ffill') # 前向填充

指定列的插值填充

data['pm2.5'].interpolate() # 插值

使用某数据填充指定列的空值

 # 使用0填补空值
data['pm2.5'].fillna(0, inplace = True) 
# inplace = True:直接修改源数据DataFrame ,默认返回修改后的数据(原数据不变)

11.用原数据组合添加一列新数据

示例:

data['tm'] = data.apply(lambda x : datetime.datetime(year = x['year'],
                                        month = x['month'],
                                        day = x['day'],
                                        hour = x['hour']),axis=1)

在这里插入图片描述

12. 删除指定某列的数据

data.drop(columns=['year','month','day','hour','No'],inplace = True)

13. 获取指定行与列

类似切片

data = data.iloc[:,:8]

14. 将某一列设置为新的Index索引值

data = data.set_index('tm')

在这里插入图片描述

15. 查看某列数据的所有值

data.cbwd.unique()

array([‘SE’, ‘cv’, ‘NW’, ‘NE’], dtype=object)

16. 类型转换Numpy

data.iloc[:,1:].to_numpy()

17. agg 聚合操作

类似数据库查询中的groupby查询

先添加新的一列按月将数据划分

data['timeForMonth'] = data.apply(lambda x: str(x['year'])+"-"+'{:02}'.format(int(x['month'])), axis=1)

聚合,对指定的列按月划分求平均值等

dataForMonth = data.groupby('timeForMonth').agg({'pm2.5':'mean','DEWP':'mean','TEMP':'mean','Iws':'mean','Is':'sum','Ir':'sum'})
  • min 最小值 max 最大值
  • sum 求和
  • mean 平均值
  • median 中位数
  • std 标准差
  • var 方差
  • count 计数

18.指定列的数据绘图

data['pm2.5'].plot()

在这里插入图片描述

19. 只要某列的数据

生成新的data

data = data[['pm2.5', 'tm']]

20.统计某列中各个数据的次数

data.列名.value_counts()
data.airline_sentiment.value_counts()

结果示例:
negative 9178
neutral 3099
positive 2363
Name: airline_sentiment, dtype: int64

21.两个数据上下拼接

data = pd.concat([data_a, data_b])

假如data_a的维度为4行6列,data_b为6行6列(列数相同),则data为10行6列

22.随机获取若干行数据

data2 = data.sample(2) # 随机取2条数据
data = data.sample(len(data)) # 乱序用法

23.查看最后几行数据

data.tail()   # 默认5行
data.tail(10) # 倒数10行

如果觉得本文有用,点赞收藏鼓励一下吧,谢谢🌹!!!

### 使用 Pandas 读取 CSV 文件 为了展示 `pandas` 的 `read_csv` 函数如何工作,下面提供了一个简单的例子: ```python import pandas as pd df = pd.read_csv('example.csv') print("从 CSV 文件加载的 DataFrame:\n", df) ``` 这段代码展示了基本的文件读取方法[^1]。 当处理可能存在格式错误的数据集时,可以设置特定参数防止程序因错误而终止执行。例如,通过设定 `on_bad_lines='skip'` 参数可以让系统忽略有问题的行继续读取剩余部分: ```python import pandas as pd df = pd.read_csv('data_with_errors.csv', on_bad_lines='skip') print(df) ``` 此配置允许即使存在一些不符合预期结构的数据行也能顺利完成整个表格的导入操作[^2]。 对于那些包含特殊分隔符或是注释标记的情况,则可通过调整相应的选项实现更精确的数据解析: ```python import pandas as pd data = pd.read_csv('special_format_data.csv', sep=',', comment='#', na_values=['']) print(data) ``` 这里设置了逗号作为字段之间的分割标志,并且任何以井号开头的行为注释不会被纳入最终的结果集中;同时还将空白字符串视为空值处理[^3]。 最后,在面对不同编码标准下的文本文件时,适当指明所使用的字符编码有助于避免乱码等问题的发生: ```python import pandas as pd df = pd.read_csv('encoded_file.csv', encoding='utf-8') print(df) ``` 上述实例说明了如何针对 UTF-8 编码类型的文档进行正确无误的信息提取[^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值