pandas,dataframe使用笔记

目录

dataframe属于pandas

新建一个dataframe

不带列名

df = pd.DataFrame()

带列名

df = pd.DataFrame(columns='类别', '文件名', '图像宽', '图像高')

dataframe添加一行内容

以前的版本是append,现在变成了concat

复制代码
row_data = {'类别': fruit, '文件名': file, '图像宽': img.shape[1], '图像高': img.shape[0]}

# 使用 concat 添加一行数据
df1 = pd.concat([df1, pd.DataFrame([row_data])], ignore_index=True)

查看dataframe某列的数据类型

复制代码
print(df['图像宽'].dtype, df['图像高'].dtype)

新建dataframe时设置了列名,则数据类型为object

复制代码
df = pd.DataFrame(columns=['类别', '文件名', '图像宽', '图像高'])

print(df['图像宽'].dtype, df['图像高'].dtype)

输出数据类型发现是object类型。而创建dataframe时不设置列名,后面再设置,则数据类型根据实际情况自动定,比如此处是数字,则类型打印出来就是Int64

dataframe的保存

保存为csv文件

复制代码
import pandas as pd  
  
# 假设df是你的DataFrame  
# df = pd.DataFrame(...)  
  
# 将DataFrame保存为CSV文件,默认不包含索引  
df.to_csv('your_file_name.csv', index=False)  
  
# 如果你需要包含索引,可以设置index=True(但这是默认值,所以通常不需要显式设置)  
# df.to_csv('your_file_name_with_index.csv', index=True)  
  
# 还可以指定其他参数,如分隔符  
# df.to_csv('your_file_name_custom_delimiter.csv', sep=';', index=False)

保存为excel文件

复制代码
pip install openpyxl

import pandas as pd  
  
# 假设df是你的DataFrame  
# df = pd.DataFrame(...)  
  
# 将DataFrame保存为Excel文件,默认不包含索引  
df.to_excel('your_file_name.xlsx', index=False, engine='openpyxl')  
  
# 如果你需要包含索引,可以设置index=True  
# df.to_excel('your_file_name_with_index.xlsx', index=True, engine='openpyxl')  
  
# 注意:'engine'参数是可选的,但如果你处理的是.xlsx文件,并且已经安装了openpyxl,  
# 那么推荐显式指定它,以避免潜在的兼容性问题。

注意:当处理非常大的DataFrame时,保存到Excel文件可能会比较慢,并且Excel文件有大小限制(对于.xlsx格式,单个工作表的最大行数和列数分别为1,048,576行和16,384列)。相比之下,CSV文件没有这些限制(尽管文件大小可能受到操作系统和文件系统的限制)。因此,在可能的情况下,使用CSV文件可能是一个更好的选择。

相关推荐
闪闪发亮的小星星2 天前
高斯光以及高斯光公式解释
笔记
cqbzcsq2 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
阿米亚波2 天前
【Windows】QEMU 启动 openEuler aarch64/arm64 架构系统 + 离线软件源
linux·windows·经验分享·笔记·架构·arm
自传.2 天前
尚硅谷 Vibe Coding|第三章(1) Claude Code深度使用与进阶技巧 学习笔记
笔记·学习·尚硅谷·vibecoding
.千余2 天前
【C++】模板进阶全解:非类型参数|全特化|偏特化|分离编译完全指南
开发语言·c++·笔记·学习·其他
自传.2 天前
尚硅谷 Vibe Coding|第二章 AI编程工具生态 学习笔记
笔记·学习·ai编程·尚硅谷·vibe coding
秋波。未央2 天前
Java Agent 开发 · Day 1 学习笔记(含作业完整标准答案)
java·笔记·学习
中屹指纹浏览器2 天前
2026指纹浏览器字体指纹、字体渲染偏差检测与全维度虚拟字体池搭建方案
经验分享·笔记
影寂ldy2 天前
WinForm PictureBox控件 + ImageList组件 完整笔记
开发语言·笔记·swift