该文章代码均在jupyter Notebook中运行,且已安装re包

# 先读取数据

import pandas as pd

f = open(r'C:\Users\qingfeng\Desktop\Python爬虫与文本分析\Python爬虫与文本分析\Python爬虫与文本分析课件(更新)\03-初识文本分析\data\table_data\sentimentexcell.csv',encoding='gbk')

df = pd.read_csv(f,encoding='utf-8')

print(type(df))

df

或者

# 先读取数据

import pandas as pd

df = pd.read_csv(open(r'C:\Users\qingfeng\Desktop\Python爬虫与文本分析\Python爬虫与文本分析\Python爬虫与文本分析课件(更新)\03-初识文本分析\data\table_data\sentimentexcell.csv'),encoding='utf-8')

print(type(df))

df

结果如下

前面讲解过如何读取CSV与Excel文件,可参考前面写过的内容

1 、df.head()

选取前n行数据,默认选取前5行,主要用来查看数据是否已经读取

df.head(3)

df.head()

2、df.tail()

选取后n行数据,默认选取后5行,主要用来查看数据是否已经读取

df.tail()

df.columns

输出df的列索引(列名)

df.columns

df[‘colname’]

查看colname这一列数据及数据类型,注意写法,不带.

df['name']

df[[‘cols1’,‘cols2’]]

返回cols这几列的数据

df[['name','text']]

df[‘newcolname’]=series

添加新的一列,名字为newcolname

df['eve_age']=28

df

df.to_datetime(df['日期列‘])

将格式混乱的日期列,转换为标准日期列

df['data_new']=pd.to_datetime(df['date'])

df

这里是将date日期列转化为格式标准的日期列,并将标准日期列添加到新的一列中,但是仍然有不精确的地方待完善

df[m:n]

显示m到n-1行的数据

df[2:4]

df.iterrows()

逐行迭代

for row in df.iterrows():

print(row)

输出结果如下

(0, date 2019/10/08

name 张三姐

text 我很开心,每天都这么快乐,我很幸福

age 20

gender female

data_new 2019-10-08 00:00:00

eve_age 28

Name: 0, dtype: object)

(1, date 13.07.07

name 李四姐

text 我很难过

age 30

gender female

data_new 2007-07-13 00:00:00

eve_age 28

Name: 1, dtype: object)

(2, date 19-10-10

name 王五哥

text 唉,真难受

age 22

gender male

data_new 2010-10-19 00:00:00

eve_age 28

Name: 2, dtype: object)

(3, date 2015/2/8

name 赵六兄弟

text 无所谓开心还是难过

age 14

gender male

data_new 2015-02-08 00:00:00

eve_age 28

Name: 3, dtype: object)

(4, date 08-5-5

name 凯哥

text 每天赚一万,真爽!

age 22

gender male

data_new 2005-08-05 00:00:00

eve_age 28

Name: 4, dtype: object)

(5, date 2019/9/9

name 八戒

text 爽歪歪

age 38

gender male

data_new 2019-09-09 00:00:00

eve_age 28

Name: 5, dtype: object)

(6, date 2018-03-21

name 孙悟空

text 天气很凉爽,很舒服

age 11

gender male

data_new 2018-03-21 00:00:00

eve_age 28

Name: 6, dtype: object)

(7, date 2018.10.9

name 白骨精

text 每天开心

age 44

gender female

data_new 2018-10-09 00:00:00

eve_age 28

Name: 7, dtype: object)

(8, date 2019.05.09

name 武媚娘

text 难过悲伤

age 32

gender female

data_new 2019-05-09 00:00:00

eve_age 28

Name: 8, dtype: object)

(9, date 2017/09/09

name 不知道起什么名字了

text 美满幸福

age 52

gender male

data_new 2017-09-09 00:00:00

eve_age 28

Name: 9, dtype: object)

观察上述返回的内容,形似元组,我们可以对其进行拆包

for idx,row in df.iterrows():

print(row)

返回内容如下

date 2019/10/08

name 张三姐

text 我很开心,每天都这么快乐,我很幸福

age 20

gender female

data_new 2019-10-08 00:00:00

eve_age 28

Name: 0, dtype: object

date 13.07.07

name 李四姐

text 我很难过

age 30

gender female

data_new 2007-07-13 00:00:00

eve_age 28

Name: 1, dtype: object

date 19-10-10

name 王五哥

text 唉,真难受

age 22

gender male

data_new 2010-10-19 00:00:00

eve_age 28

Name: 2, dtype: object

date 2015/2/8

name 赵六兄弟

text 无所谓开心还是难过

age 14

gender male

data_new 2015-02-08 00:00:00

eve_age 28

Name: 3, dtype: object

date 08-5-5

name 凯哥

text 每天赚一万,真爽!

age 22

gender male

data_new 2005-08-05 00:00:00

eve_age 28

Name: 4, dtype: object

date 2019/9/9

name 八戒

text 爽歪歪

age 38

gender male

data_new 2019-09-09 00:00:00

eve_age 28

Name: 5, dtype: object

date 2018-03-21

name 孙悟空

text 天气很凉爽,很舒服

age 11

gender male

data_new 2018-03-21 00:00:00

eve_age 28

Name: 6, dtype: object

date 2018.10.9

name 白骨精

text 每天开心

age 44

gender female

data_new 2018-10-09 00:00:00

eve_age 28

Name: 7, dtype: object

date 2019.05.09

name 武媚娘

text 难过悲伤

age 32

gender female

data_new 2019-05-09 00:00:00

eve_age 28

Name: 8, dtype: object

date 2017/09/09

name 不知道起什么名字了

text 美满幸福

age 52

gender male

data_new 2017-09-09 00:00:00

eve_age 28

Name: 9, dtype: object

迭代逐行输出

for idx,row in df.iterrows():

date = row['date']

name = row['name']

print(date,name)

2019/10/08 张三姐

13.07.07 李四姐

19-10-10 王五哥

2015/2/8 赵六兄弟

08-5-5 凯哥

2019/9/9 八戒

2018-03-21 孙悟空

2018.10.9 白骨精

2019.05.09 武媚娘

2017/09/09 不知道起什么名字了

df.agg({‘colname’:[func]})

对df对colname列批量进行func运算;如果是内置函数,func为”mean“、”sum“等,否则为函数名

# 计算文本长度

def length(string):

return len(string)

test = 'hello'

length(test)

结果为5

# 对text列进行批量计算

df['text_len']=df.agg({'text':[length]})

df

对其进行字符串长度计算后,添加到新的一列text_len中

如果function是一个情感计算函数,那么我们就可以将其情感计算结果写入新的一列中

df.to_csv(文件路径)

# df.to_csv(文件路径) 将dataframe输出到csv文件中

# df.to_excel(文件路径) 将dataframe输出到excel文件中

df.to_csv(r'C:\Users\qingfeng\Desktop\df.csv',encoding='gbk')

python pandas 讲解ppt_Python中pandas的分析——包括代码实践,相关,解析,含,实战相关推荐

  1. python画直方图代码-Python绘制直方图及子图的方法分析(代码示例)

    本篇文章给大家带来的内容是关于Python绘制直方图及子图的方法分析(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.直方图的绘制也需要用到matplotlib下的py ...

  2. 大学计算机专业课程主体知识层,《计算机程序设计基础》论文,关于《计算机程序设计基础》课程中深层学习教学策略的实践相关参考文献资料-免费论文范文...

    导读:本论文是一篇免费优秀的关于<计算机程序设计基础>论文范文资料,可用于相关论文写作参考. 刘倩 (西南交通大学信息科学与技术学院,四川成都611756) 摘 要:在<计算机程序设 ...

  3. python pandas 讲解ppt_Python数据分析之Pandas入门

    一.概述 之前我们讲了Python数据分析中基础的工具包Numpy,今天我们来讲讲Pandas,由于Pandas的内容也比较多,本文主要还是讲解一些入门的基本知识. 二.详细说明 同样的我们来引入使用 ...

  4. python删除列索引_python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除)...

    前言 最近在网上搜了许多关于pandas.DataFrame的操作说明,都是一些基础的操作,但是这些操作组合起来还是比较费时间去正确操作DataFrame,花了我挺长时间去调整BUG的.我在这里做一些 ...

  5. python处理流程-在python异步协程中处理流程分析(一)

    之前的一篇文章python中的asyncio使用详解介绍了在python3 中的asyncio的基础使用,可以在实际的工作中,由于以前写了太多的多线程与多进程,所以对于以前编写风格和一些由于没有异步支 ...

  6. python 识别人名_HanLP中人名识别分析

    HanLP中人名识别分析 在看源码之前,先看几遍论文<基于角色标注的中国人名自动识别研究> 关于命名识别的一些问题,可参考下列一些issue: HanLP参考博客: 分词 分词:给定一个字 ...

  7. java人名识别_HanLP中人名识别分析(示例代码)

    HanLP中人名识别分析 在看源码之前,先看几遍论文<基于角色标注的中国人名自动识别研究> 关于命名识别的一些问题,可参考下列一些issue: HanLP参考博客: 分词 分词:给定一个字 ...

  8. 详解视频中动作识别模型与代码实践

    摘要:本案例将为大家介绍视频动作识别领域的经典模型并进行代码实践. 本文分享自华为云社区<视频动作识别>,作者:HWCloudAI.实验目标 通过本案例的学习: 掌握 C3D 模型训练和模 ...

  9. python pandas 讲解ppt_Python数据分析之pandas基本功能讲解

    pandas的基本功能 重新索引 不存在的索引都用同一个值填充: obj.reindex(['a','b','c','d','e'],fill_value=0) out: a -5.3 b 7.2 C ...

最新文章

  1. python学习之第一课时--初始python
  2. Heap 3214 LIS题解
  3. CF1550F Jumping Around
  4. autojs遍历当前页面所有控件_PyQT5控件:容器(Containers Widgets)
  5. 初识java中数组、数组在内存中、越界异常、空指针异常
  6. 趋势科技云安全软件_阿里达摩院发布2020十大科技趋势!量子计算、类脑计算系统崛起...
  7. 1 CentOS 6下FastDFS实现分布式文件系统
  8. ap sat_先准备SAT? SAT II?还是AP?没有哪一个比另一个更重要!
  9. 35.Linux/Unix 系统编程手册(下) -- 进程的优先级和调度
  10. hmcl离线模式可以联机吗_hmcl启动器怎么联机-hmcl启动器联机方法介绍
  11. 基于矢量网络分析仪的天线近场测试方案
  12. 计算机为啥系统保护设置不了,Win7系统下不能设置电脑屏幕保护程序的时间怎么办...
  13. 单元测试系列一-为什么要写单元测试,何时写,写多细
  14. QPS、TPS、吞吐量含义
  15. 解决Pycharm挂代理后依旧插件下载慢
  16. SKY光遇功能辅助脚本介绍 新手入门了解SKY光遇
  17. C#重点知识详解(转)
  18. 微信公众号带场景参数的二维码生成与使用?
  19. 什么才是真正的云主机?辨别真假云主机
  20. 在H5移动端开发强制竖屏,横屏时提示

热门文章

  1. 中小型企业网络架构(一)
  2. Win11微信消息任务栏右下角不闪烁解决办法
  3. 使用vbs脚本操作登陆对话框-登陆QQ为例
  4. 面试官:你知道Callback Hell(回调地狱)吗?
  5. 一小时的时间戳是多少?
  6. 2009---奶牛飞盘队
  7. Python-OpenCV读取视频文件
  8. service mysql restart 和service mysqld restart 的区别
  9. learning的反义词英文_英语的反义词和对应词
  10. 【进制转换】输出二进制补码