Pandas基础1

Pandas

一、文档

https://pandas.pydata.org/docs/getting_started/index.html#getting-started

https://pandas.pydata.org/docs/reference/frame.html

二、安装pandas 

2.1 安装指令

conda install -c conda-forge pandas
//or 
pip install pandas
# 如网络慢,可指定国内源快速下载安装
pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple #pandas也可以换成其他库名

 

2.2 镜像下载
Miniconda:
https://docs.conda.io/en/latest/miniconda.html
https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/
Anaconda:
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
2.3切换环境
复制代码
# 查看所有虚拟环境及当前环境
conda info -e
# 创建新环境,指定环境名称和Python版本
conda create -n py38data python=3.8
# 删除环境
conda remove -n py38data --all
# 进入、激活环境
conda activate py38data
# 退出环境
conda deactivate
复制代码

2.4 pip

复制代码
pip list:# 查看当前Python环境安装了哪些库。
pip install 库名: # 安装新库,注意三个词之间要用空格隔开。
pip install库名1库名2库名3:# 同时安装多个库,多个库名之间用
空格隔开。
pip install库名-U:#将库的版本升级到最新版。
pip uninstall库名:# 卸载库。
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple
# 安装Jupyter Notebook,使用清华大学下载源加快下载速度
pip install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple
# 安装 Jupyter Lab 的命令如下
pip install jupyterlab
复制代码

2.5 Jupyter Notebook

Jupyter(https://jupyter.org)的特点是能够在网页上直接执行编写的代码,同时支持动态交互,在做数据可视化时尤其方便。
Jupyter Lab和Jupyter Notebook:Jupyter Lab为最新一代的产品。推荐安装Jupyter Notebook。
# 安装Jupyter Notebook,使用清华大学下载源加快下载速度
pip install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple
# 安装 Jupyter Lab 的命令如下
pip install jupyterlab

#启动
jupyter notebook
jupyter lab

 

三、包

Excel处理相关包:xlrd、openpyxl、XlsxWriter
解析网页包:Requests、lxml、html5lib、Beautiful Soup 4
可视化包:Matplotlib、seaborn、Plotly、Bokeh
计算包:SciPy、statsmodels
 

四、数据结构

1、Python数据类型
不可变数据:Number(数字)、String(字符串)、Tuple(元
组)。
可变数据:List(列表)、Dictionary(字典)、Set(集合)。
type() 输出类型,isinstance()判断是不是指定的类型
 
2、元组和列表
元组(tuple)跟列表(list)非常相似,二者之间的差异是元组不可改变,而列表是可以改变的。元组使用圆括号(),列表使用方括号[]
 
3、 字典&集合
复制代码
#字典Dictionary
# 以下均可定义如下结果
# {'name': 'Tom', 'age': 18, 'height': 180}
d = dict(name='Tom', age=18, height=180)
d = dict([('name', 'Tom'), ('age', 18), ('height', 180)])
d = dict(zip(['name', 'age', 'height'], ['Tom', 18, 180]))

# 嵌套取值
d = {'a': {'name': 'Tom', 'age':18}, 'b': [4,5,6]}
d['b'][1] # 5
d['a']['age'] # 18

#集合Set
s.remove('a') #  remove删除不存在会报错
s.discard('3') # 删除一个元素,无则忽略,不报错

s1 = {1,2,3}
s2 = {2,3,4}
s1 & s2  # {2, 3} (交集)
s1.intersection(s2) # {2, 3}(交集)
s1.intersection_update(s2) # {2, 3}(交集,会覆盖s1)
s1 | s2 # {1, 2, 3, 4}(并集)
s1.union(s2) # {1, 2, 3, 4}(并集)
s1.difference(s2) # {1}(差集)
s1.difference_update(s2) # {1}(差集,会覆盖s1)
s1.symmetric_difference(s2) # {1, 4}(交集之外)
s1.isdisjoint(s2) # False(是否没有交集)
s1.issubset(s2) # False (s1是否是s2的子集)
s1.issuperset(s2) # False(s1是否是s2的超集,即s1是否包含s2中的所有元素)
复制代码

4、Numpy

官网: https://numpy.org

Pandas在NumPy库上做了封装。
 
5、Pandas 
Series、DataFrame
s = pd.Series(data, index=index)
df = pd.DataFrame(data=None, index=None, columns=None)
 
索引(index)
轴(axis):仅用在DataFrame结构中,代表数据的方向,如行和列,用0代表列(默认),1代表行。

 

 
 
 
posted @   尘恍若梦  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示