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代表行。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库