Python Pandas 安装和设置
1、安装 Pandas
1)确保已安装Python
Pandas 需要 Python 环境。可以通过在终端或命令提示符中运行 python --version
来检查是否已安装 Python。
2)安装 Pandas
使用 Python 的包管理器 pip 进行安装:
pip install pandas
Anaconda 可以使用 Conda 进行安装:
conda install pandas
3)更新Pandas
pip install --upgrade pandas
2、设置 Pandas
设置 Pandas 可以帮助自定义 Pandas 的显示和配置,以提高清晰度和一致性。
1)常用选项
选项 |
描述 |
display.max_rows |
控制DataFrame或Series在控制台输出时显示的最大行数。 |
display.max_columns |
设置DataFrame输出时显示的最大列数。 |
display.width |
设置命令行输出的宽度,以字符为单位。 |
display.max_colwidth |
设置单个列的最大宽度。 |
display.precision |
设置浮点数显示的小数位数。 |
display.expand_frame_repr |
在打印DataFrame信息时,是否显示扩展信息。 |
display.notebook_repr_html |
控制当DataFrame以HTML形式显示时的一些特性, 如是否显示索引。 |
display.float_format |
控制是否显示浮点数小数点后不重要的0。 |
display.memory_usage |
在DataFrame的信息输出中显示内存占用。 |
2)完整选项
选项 |
描述 |
compute.use_bottleneck |
如果安装了bottleneck库,则使用它来加速计算, 默认值为True,有效值: False, True [默认: True] [当前: True] |
compute.use_numba |
如果安装了numba, 则使用numba引擎选项进行选定操作, 默认值为False,有效值:False, True [默认: False] [当前: False] |
compute.use_numexpr |
如果安装了numexpr库,则使用它来加速计算, 默认值为True,有效值:False, True [默认: True] [当前: True] |
display.chop_threshold |
如果设置为浮点值, 则所有小于给定阈值的浮点值在repr中显示为0, 默认值:None [当前: None] |
display.colheader_justify |
控制列标题的对齐方式, 由DataFrameFormatter使用, 默认值:right [当前: right] |
display.date_dayfirst |
当为True时,打印和解析日期时首先显示日, 例如20/01/2005,默认值:False [当前: False] |
display.date_yearfirst |
当为True时,打印和解析日期时首先显示年, 例如2005/01/20,默认值:False [当前: False] |
display.encoding |
默认为控制台检测到的编码, 指定to_string返回的字符串使用的编码, 默认值:utf-8 [当前: utf-8] |
display.expand_frame_repr |
是否在多行中为宽DataFrame打印完整的DataFrame repr, max_columns仍被遵守,但如果其宽度超过display.width, 则输出将跨越多个“页面”,默认值:True [当前: True] |
display.float_format |
可调用对象应接受一个浮点数并返回数字的期望格式的字符串, 此处用于SeriesFormatter等地方, 默认值:None [当前: None] |
display.html.border |
在DataFrame HTML表示的
标签中插入一个 border=value 属性。[默认: 1] [当前: 1] |
display.html.table_schema |
是否发布前端支持的Table Schema表示。 [默认: False] [当前: False] |
display.html.use_mathjax |
当为True时, Jupyter notebook将使用MathJax处理表格内容, 渲染用美元符号包围的数学表达式。[默认: True] [当前: True] |
display.large_repr |
对于超出max_rows/max_cols的DataFrames, repr(和HTML repr)可以显示一个截断的表格, 或切换到df.info()的视图。[默认: truncate] [当前: truncate] |
display.max_categories |
pandas在打印Categorical 或dtype为'category'的Series时应输出的最大类别数。 [默认: 8] [当前: 8] |
display.max_columns |
如果超过max_cols,则切换到截断视图。 'None'值意味着无限制。[默认: 0] [当前: 0] |
display.max_colwidth |
pandas数据结构表示中列的最大字符宽度。 当列溢出时,输出中会嵌入一个'...'占位符。 'None'值意味着无限制。[默认: 50] [当前: 50] |
display.max_dir_items |
将添加到dir(...)中的项目数。'None'值意味着无限制。 [默认: 100] [当前: 100] |
display.max_info_columns |
在DataFrame.info方法中用来决定是否打印每列信息。 [默认: 100] [当前: 100] |
display.max_info_rows |
df.info()通常会为每列显示空值计数。 对于大型数据框架,这可能相当慢。 max_info_rows和max_info_cols 只限制小于指定尺寸的数据框架的空值检查。 [默认: 1690785] [当前: 1690785] |
display.max_rows |
如果超过max_rows,则切换到截断视图。 'None'值意味着无限制。[默认: 60] [当前: 60] |
display.max_seq_items |
在优雅打印长序列时, 最多打印max_seq_items个项目。 如果省略了项目,则在结果字符串中添加“...”表示。 如果设置为None,则打印的项目数无限制。 默认: 100] [当前: 100] |
display.memory_usage |
指定当调用df.info()时 是否显示DataFrame的内存使用情况。 有效值True,False,'deep'。 [默认: True] [当前: True] |
display.min_rows |
在截断视图中显示的行数(当超过max_rows时)。 当max_rows设置为None或0时被忽略。 当设置为None时,遵循max_rows的值。 [默认: 10] [当前: 10] |
display.multi_sparse |
“稀疏化”MultiIndex显示 (不在组内的外层级别显示重复元素)。 [默认: True] [当前: True] |
display.notebook_repr_html |
当为True时,IPython notebook 将对pandas对象使用HTML表示 (如果可用)。[默认: True] [当前: True] |
display.pprint_nest_depth |
控制在优雅打印时处理的嵌套级别数。 [默认: 3] [当前: 3] |
display.precision |
浮点输出精度,以小数点后的位数表示。 [默认: 6] [当前: 6] |
display.show_dimensions |
是否在DataFrame repr的末尾打印出尺寸。 [默认: truncate] [当前: truncate] |
display.unicode.ambiguous_as_wide |
是否使用Unicode东亚宽度来计算显示文本宽度。 [默认: False] [当前: False] |
display.unicode.east_asian_width |
是否使用Unicode东亚宽度来计算显示文本宽度。 [默认: False] [当前: False] |
display.width |
显示的字符宽度。[默认: 80] [当前: 80] |
io.excel.ods.reader |
‘ods’文件的默认Excel读取引擎。可选项: auto, odf。 [默认: auto] [当前: auto] |
io.excel.ods.writer |
‘ods’文件的默认Excel写入引擎。可选项: auto, odf。 [默认: auto] [当前: auto] |
io.excel.xls.reader |
‘xls’文件的默认Excel读取引擎。可选项: auto, xlrd。 [默认: auto] [当前: auto] |
io.excel.xlsb.reader |
‘xlsb’文件的默认Excel读取引擎。可选项: auto, pyxlsb。 [默认: auto] [当前: auto] |
io.excel.xlsm.reader |
‘xlsm’文件的默认Excel读取引擎。 可选项: auto, xlrd, openpyxl。 [默认: auto] [当前: auto] |
io.excel.xlsm.writer |
‘xlsm’文件的默认Excel写入引擎。 可选项: auto, openpyxl。 [默认: auto] [当前: auto] |
io.excel.xlsx.reader |
‘xlsx’文件的默认Excel读取引擎。 可选项: auto, xlrd, openpyxl。 [默认: auto] [当前: auto] |
io.excel.xlsx.writer |
‘xlsx’文件的默认Excel写入引擎。 可选项: auto, openpyxl, xlsxwriter。 [默认: auto] [当前: auto] |
io.hdf.default_format |
HDF的默认写入格式,如果为None, 则put将默认为‘fixed’,append将默认为‘table’。 [默认: None] [当前: None] |
io.hdf.dropna_table |
在追加到表格时删除所有NaN行。 [默认: False] [当前: False] |
io.parquet.engine |
默认parquet读写引擎。 可选项: ‘auto’, ‘pyarrow’, ‘fastparquet’。 [默认: auto] [当前: auto] |
io.sql.engine |
默认SQL读写引擎。 可选项: ‘auto’, ‘sqlalchemy’。 [默认: auto] [当前: auto] |
mode.chained_assignment |
尝试使用链式赋值时, 引发异常、警告或无操作。 默认是警告。[默认: warn] [当前: warn] |
mode.copy_on_write |
使用Copy-on-Write的新复制-视图行为。 默认为False, 除非被‘PANDAS_COPY_ON_WRITE’环境变量覆盖 (如果设置为“1”表示True, 在导入pandas之前需要设置)。 [默认: False] [当前: False] |
mode.data_manager |
内部数据管理类型;可以是‘block’或‘array’。 默认为‘block’, 除非被‘PANDAS_DATA_MANAGER’环境变量覆盖 (在导入pandas之前需要设置)。 [默认: block] [当前: block] |
mode.sim_interactive |
是否模拟交互模式以进行测试。 [默认: False] [当前: False] |
mode.string_storage |
StringDtype的默认存储。 [默认: python] [当前: python] |
mode.use_inf_as_na |
True表示将None, NaN, INF, -INF视为NA(旧方式), False表示None和NaN为null, 但INF, -INF不是NA(新方式)。 [默认: False] [当前: False] (已弃用) |
plotting.backend |
使用的绘图后端。 [默认: matplotlib] [当前: matplotlib] |
plotting.matplotlib.register_converters |
是否在matplotlib的单位注册表中注册日期、 时间、日期时间和周期的转换器。 [默认: auto] [当前: auto] |
styler.format.decimal |
浮点数和复数的小数点分隔符的字符表示。 [默认: .] [当前: .] |
styler.format.escape |
是否根据给定上下文(html或latex) 转义某些字符。[默认: None] [当前: None] |
styler.format.formatter |
在Styler.format中默认使用的格式化对象。 [默认: None] [当前: None] |
styler.format.na_rep |
识别为缺失的值的字符串表示。 [默认: None] [当前: None] |
styler.format.precision |
浮点数和复数的精度。[默认: 6] [当前: 6] |
styler.format.thousands |
浮点数、整数和复数的千位分隔符的字符表示。 [默认: None] [当前: None] |
styler.html.mathjax |
如果为False,将呈现特殊的CSS类, 表示Jupyter Notebook中不会使用Mathjax。[默认: True] [当前: True] |
styler.latex.environment |
替换LaTeX中的\begin{table}的环境。 [默认: None] [当前: None] |
styler.latex.hrules |
是否在顶部、底部和标题下方添加水平线。 [默认: False] [当前: False] |
styler.latex.multicol_align |
LaTeX多列稀疏化的水平对齐指定符。 [默认: r] [当前: r] |
styler.latex.multirow_align |
LaTeX多行稀疏化的垂直对齐指定符。 [默认: c] [当前: c] |
styler.render.encoding |
输出HTML和LaTeX文件使用的编码。 [默认: utf-8] [当前: utf-8] |
styler.render.max_columns |
将呈现的最大列数。 [默认: None] [当前: None] |
styler.render.max_elements |
将呈现的最大数据单元格(<td>)元素数, 在需要时将对列、行或两者进行裁剪。 [默认: 262144] [当前: 262144] |
styler.render.max_rows |
将呈现的最大行数。 [默认: None] [当前: None] |
styler.render.repr |
确定在Jupyter Notebook中使用的输出。 [默认: html] [当前: html] |
styler.sparse.columns |
是否稀疏化层次列的显示。 [默认: True] [当前: True] |
styler.sparse.index |
是否稀疏化层次索引的显示。 [默认: True] [当前: True] |
参考文档:
3)使用设置
参考文档:
3、Pandas 与 NumPy
Pandas 和 NumPy 都是 Python 的科学计算库。它们都提供了用于处理数据的功能,但它们的侧重点有所不同。NumPy 是一个矩阵和数组处理库。它提供了用于创建、操作和处理矩阵和数组的功能。NumPy 是 Pandas 的基础,Pandas 使用 NumPy 来存储和操作数据。
1)数据结构
NumPy 提供了 ndarray,这是一个高效的多维数组,支持快速的数学和逻辑操作。Pandas 提供了 DataFrame 和 Series。DataFrame 是一个二维表格型数据结构,可以看作是一个由多个类型相同的 Series 组成的字典。Series 是一种一维数组,类似于 NumPy 的 ndarray,但它可以拥有轴标签,因此可以存储异构类型的数据。
Pandas 使用 DataFrame 数据结构来表示表格数据。DataFrame 类似于 NumPy 的 ndarray 类,但它具有一些额外的功能,例如列标签和索引。:Pandas 提供了用于数据分析的功能,例如统计分析、图表和时间序列分析。
2)功能用途
NumPy 主要用于处理数值类型的数据,是科学计算的基石。它提供了大量的数学函数,用于快速操作大量数据。
Pandas 则专注于数据分析。它提供了丰富的功能,如数据对齐、处理缺失数据、时间序列分析等,非常适合用来处理和分析实际中的结构化数据。
3)互操作性
Pandas 和 NumPy 可以很好地互操作。可以将 Pandas 的 DataFrame 和 Series 转换为 NumPy 的数组,反之亦然。这使得在两个库之间切换变得非常方便。
参考文档:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
2023-01-01 Kubernetes(k8s) kubectl convert常用命令