我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Pandas如何安装使用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Pandas如何安装使用

这篇文章主要介绍了Pandas如何安装使用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

1. 安装

如果做数据分析用途建议使用Anaconda,自带pandas numy 以及很多库。

Anaconda 安装地址:https://www.continuum.io/downloads

安装之后可以在terminal 输入 conda 开头的命令(类似pip),例如list 查看已经安装的包,以及进行常用的install update等动作。


2. Import

绝大部分时候pandas都被使用者import为pd,根据作者的描述其实pandas是panel data的缩写(而不是熊猫)

import pandas as pd


3. DataFrame

DataFrame是Pandas用来处理数据最常见的格式,一张二维的表,有行,列和值。类似于一个数据库里的table 或者excel中的worksheet。如果有一个DataFrame叫df, df.columns可以得到所有的列标签,同理df.index可以得到所有的行标签。


4. 读取数据

4.1 从excel中读取数据

raw = pd.read_excel('%s%s.xlsx' %path %filename, sheetname='Data', skiprows= 1)

数据会被读取到一个叫raw的DataFrame中,sheetname可以指定读某个工作表,skiprow可以跳过初始N行的数据。


4.2 从csv中读取数据

raw = pd.read_csv('%s%s.csv' %path %filename)


5. 增删改查

5.1 增删列

新增列,位置在最后一列

raw['新列名'] = 'string'

在中间增列,使用 df.insert()

df.insert(位置,'列名',值)

例如,在raw df第二列(index不算一列)插入一列,名为city,值为source_data的 [city]列

raw.insert(1,'column_name',source_data['data1'])

删除列

del raw['列名']


5.2 改列名

2.1 一次性改变所有的列名

cols = ['name_1', 'name_2', 'name_3']
raw= raw[cols]

2.2 修改某个列名
使用df.rename(), 注意如果df中有多个old_name列的话都会被一并重命名为new_name

df=df.rename(columns = {'old_name':'new_name'})


5.3 改index

把某列设为index,原index会被删除

raw = raw.set_index('column_name')

reset_index(),新index是以0开始的递增整数列,原index会变成一个新的列。

raw = raw.reset_index()

如果不需要原来的index中的值可以加drop = True:

raw = raw.reset_index(drop=True)


5.4 编辑值(计算值)

4.1 四则运算

raw['data1'] = raw['data1'] *100
raw['data2'] = (raw['data1']+raw['data3'])/raw['data4']
raw['total'] = raw.sum(axis=1)


5.5 查列

5.1 筛选某列包含某值(raw df中 GEO CODE为CN的所有数据)

raw = raw[raw['GEO_CODE']=='CN']

5.2 多条件筛选

raw = raw[(raw['GEO_CODE']=='CN')&(raw['METRIC']=='Conversion Rate')]

5.3 筛选多个列

required_key = ['User_ID','SEO visits','SEA visits','Conversion Rate']
raw = raw[raw['METRIC_KEY'].isin(required_key)]

5.6 去重

1 去重使用drop_duplicates(),主要有2个参数:
subset 需要去重的值
keep,在遇到重复值时保留第一个(keep = 'first')or最后一(keep = 'last')

df = df.drop_duplicates(subset = 'column_name', keep = 'last')

2 因为去重时,保留的值很简单是取第一个或最后一个,所以需要搭配sort_values()来保证留下的值是你想要的。sort_values()默认是升序ascending,由小到大。

df = df.sort_values(by='column_name')
df = df.drop_duplicates(subset = 'column_name', keep = 'last')


6 Excel功能相关

6.1 Excel的数据透视表

pd.pivot_table()

主要有3个参数,index, columns,value, 以及aggfunc

  • index相当于行标签

  • columns相当于列标签

  • value相当于用来计算值,配合aggfunc来计算count/mean/average
    注意value不能使用index 和columns已经使用过的值,这点和excel不同。

pivot= pd.pivot_table(raw, values = 'Response ID', index= ['Country'], columns=['NPS category'], aggfunc=np.size)

aggfunc目前用过的有计数np.size 汇总np.sum 平均np.average np.mean 中位数np.median


6.2 DataFrame的融合 (vlookup or hookup)

因为excel的公式是在某个单元格中,而DataFrame一般是一次性处理行或列的数据,给某行/列根据其他行/列的数据引用赋值就相当于表格的融合。
主要用到2个方法:

  • pd.merge()

  • pd.concat()

详情请看下节


6.3 pd.merge()

pd.merge()非常类似数据库中join的操作,参数很丰富:

merged_df = pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=True, suffixes=('_x', '_y'), copy=True, indicator=False)

merge可以提供关系型数据库中常用的几种合并方式,空值会用NaN填充:
下面是几个常用参数的详解:
参数on

pd.merge(df1, df2, on = 'xxx') #on的参数用来确定2个表共同的column。

on在这里就相当于vlookup中lookup value的定位

参数merge

pd.merge(df1, df2, how= 'xxx') #how的参数用来确定 merge method 。

Merge method和SQL join的对应关系如下:

Merge methodSQL Join NameDescription
leftLEFT OUTER JOIN只使用左表的键(key)
rightRIGHT OUTER JOIN只使用右表的键
outerFULL OUTER JOIN使用两表的并集的键
inerINNER JOIN使用两表的交集的键

如果使用pd.merge实现vlookup时,正好二者的index就是共有值,只要
pd.merge(main_data,to_lookup_data,on ='left')就OK了

参数left_on right_on
to bu input
参数left_index right_index
to bu input


6.4 pd.concat()

如果两个DataFrame column相同,二者上下拼接在一起 (增加数据行)

pd.concat([df1,df2])

如果两个DataFrame index相同,二者左右拼接在一起 (增加数据列)

pd.concat([df1,df2], axis = 1)

如果有多个DataFrame, column相同的情况下:

dfs = [df1,df2,df3,df4]
result = pd.concat(dfs)

关于pd.merge()和pd.concat() 更多细节请参考官网:
http://pandas.pydata.org/pandas-docs/stable/merging.html


7. 数据输出

假设现在有一个名为raw的DataFrame需要输出到C盘根目录

7.1 输出到csv

DataFrame自带to_csv()功能,注意如果有中文建议加encoding参数,如果不需要index可加 index= False 参数。

raw.to_csv('C:\File_name.csv', encoding = 'utf-8', index = False)

7.2 输出到Excel

使用pandas自带的 Excel Writer生成2010格式的excel,

from pandas import ExcelWriter
path = 'C:\'
writer = ExcelWriter('%sFile_name.xlsx' %path) #指定Excel文件名
raw.to_excel(writer, sheet_name = 'worksheet_name') #指定工作表名称
writer.save()

7.3 输出到数据库

如果要存数据库呢? RDBS和NOSQL

To be input..

8.使用datetime进行时间相关的操作

在python中用datetime也可以实现同excel中常用的日期函数一样的功能

8.1 创建现在的时间点为对象

import datetime
now = datetime.datetime.now()
today = datetime.datetime.today()

8.2 时间的位移

start_date = dt.date(today.year-2,today.month-1,today.day)
end_date = dt.date(today.year,today.month-3,today.day+1)

如果月份/日期 超过限制会报错
所以可能需要写一个循环去输出这些日期

date_list = [] while start_date < end_date: if start_date.month < 12:        date_list.append(start_date.strftime('%Y-%m'))        start_date = datetime.date(start_date.year,start_date.month +1,start_date.day) else:        date_list.append(start_date.strftime('%Y-%m'))                start_date = datetime.date(start_date.year+1,start_date.month-11,start_date.day)
8.3 调整格式

如上面所示,使用strftime()可以调整时间的格式,可以调整的选项非常多,参考:
http://www.runoob.com/python/att-time-strftime.html

  • %y 两位数的年份表示(00-99)

  • %Y 四位数的年份表示(000-9999)

  • %m 月份(01-12)

  • %d 月内中的一天(0-31)

  • %H 24小时制小时数(0-23)

  • %I 12小时制小时数(01-12)

  • %M 分钟数(00=59)

  • %S 秒(00-59)

  • %a 本地简化星期名称

  • %A 本地完整星期名称

  • %b 本地简化的月份名称

  • %B 本地完整的月份名称

  • %c 本地相应的日期表示和时间表示

  • %j 年内的一天(001-366)

  • %p 本地A.M.或P.M.的等价符

  • %U 一年中的星期数(00-53)星期天为星期的开始

  • %w 星期(0-6),星期天为星期的开始

  • %W 一年中的星期数(00-53)星期一为星期的开始

  • %x 本地相应的日期表示

  • %X 本地相应的时间表示

  • %Z 当前时区的名称

  • %% %号本身

8.4 周数的计算
8.5 工作日的计算

Excel中有个很方便的函数叫networkdays,给出起始日期,结束日期和holiday可以计算两个日期间的工作天数。而pandas或者datetime对这个需求支持的不好,所以找到了这个module: business_calendar
https://pypi.python.org/pypi/business_calendar/

5.1 计算日期之间的工作日数量
例如,求16年2月1日~29日的工作日有几天,已知条件:

  • 周一到周五都上班

  • 2月8日到12日为休假

date1 = datetime.datetime(2016,1,31)#注意如果写2月1日,当天是不包含在内的,所以写1月31日date2 = datetime.datetime(2016,2,29) cal = Calendar(workdays =[MO, TU, WE, TH, FR], holidays=['2016-02-08','2016-02-09','2016-02-10','2016-02-11','2016-02-12'])bsday = cal.busdaycount(date1, date2)print (bsday)

感谢你能够认真阅读完这篇文章,希望小编分享的“Pandas如何安装使用”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Pandas如何安装使用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Pandas如何安装使用

这篇文章主要介绍了Pandas如何安装使用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 安装如果做数据分析用途建议使用Anaconda,自带pandas numy 以及
2023-06-03

使用anaconda如何安装pandas

今天就跟大家聊聊有关使用anaconda如何安装pandas,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在anaconda中安装pandas的方法:在cmd命令行输入:pip in
2023-06-14

如何安装pandas

小编给大家分享一下如何安装pandas,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!(为了避免手敲,关键代码如下:pip install -i https://p
2023-06-03

python如何安装pandas

您可以使用以下命令来安装pandas:1. 使用pip安装pandas:```pip install pandas```2. 使用conda安装pandas(如果您使用的是Anaconda发行版):```conda install pand
2023-09-08

python中如何安装pandas

要在Python中安装pandas,可以使用pip命令。打开终端或命令提示符,并输入以下命令:```pip install pandas```这将自动从Python Package Index(PyPI)下载并安装pandas库。如果你使用
2023-08-15

如何在Pycharm中安装Pandas库

这篇文章将为大家详细讲解有关如何在Pycharm中安装Pandas库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.Python安装从Python官网( https://www.pytho
2023-06-06

pandas如何使用

小编给大家分享一下pandas如何使用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、生成数据表 1、首先导入pandas库,一般都会用到numpy库,所以我们
2023-06-02

python中的pandas怎么安装使用

这篇文章主要介绍了python中的pandas怎么安装使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python中的pandas怎么安装使用文章都会有所收获,下面我们一起来看看吧。说明1、python+da
2023-06-30

python中怎么安装和使用pandas库

要安装和使用pandas库,可以按照以下步骤进行操作:1. 安装pandas库:- 使用pip安装:在终端或命令提示符中运行以下命令:`pip install pandas`- 使用conda安装:在Anaconda Prompt中运行以下
2023-10-11

python中的pandas库怎么安装及使用

要安装pandas库,可以使用pip命令。在命令行中输入以下命令来安装pandas:```pip install pandas```安装完成后,可以在Python脚本中使用以下代码来导入pandas库:```pythonimport pan
2023-09-25

简易pandas安装教程:详细指导如何在不同操作系统上安装pandas

简易pandas安装教程:详细指导如何在不同操作系统上安装pandas,需要具体代码示例随着数据处理和分析的需求不断增加,pandas成为了许多数据科学家和分析师们的首选工具之一。pandas是一个强大的数据处理和分析库,可以轻松处理和分
简易pandas安装教程:详细指导如何在不同操作系统上安装pandas
2024-02-22

如何安装使用GitLab

这篇文章主要为大家展示了“如何安装使用GitLab”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何安装使用GitLab”这篇文章吧。GitLab 是一个用于仓库管理系统的开源项目,使用Git作
2023-06-27

python安装pandas模块出错如何解决

如果在安装pandas模块时遇到错误,可以尝试以下几种解决方法:1. 确保已正确安装了Python环境。可以在命令行中输入`python --version`查看Python版本,如果未安装或版本过低,可以去Python官网下载最新版本并安
2023-09-23

Flutter如何安装使用

这篇文章给大家分享的是有关Flutter如何安装使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。序言Flutter出来已经有些日子了,越来越多的开发者也开始尝试使用 Flutter 进行开发,Flutter 是
2023-06-04

EasySwoole如何安装使用

小编给大家分享一下EasySwoole如何安装使用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!EasySwooleEasySwoole 是一款基于Swoole Server 开发的常驻内存型的分布式PHP框架,专为API
2023-06-14

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录