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文件可能是一个更好的选择。

相关推荐
Nontee6 小时前
MySQL 插入冲突了怎么办?两种处理方式入门笔记
数据库·笔记·mysql
浔溺7 小时前
al+大数据每日学习笔记26
笔记·学习
老当益壮梁奶奶8 小时前
Linux软件编程学习笔记(七):线程分离与线程间通信详解
linux·c语言·c++·笔记·学习
sel_98 小时前
【多轮对话论文导读(三)】多轮对话与Agent论文阅读笔记:用户模拟、轨迹生成与长期记忆
论文阅读·人工智能·笔记·深度学习·算法·机器学习
zzm6288 小时前
《SIGIR 2018论文精读|深度学习点击序列模型:对搜索页面点击行为进行序列建模》
笔记·深度学习·推荐系统·论文精读
常驻客栈9 小时前
B-深入理解计算机系统第3版之第8章:异常控制流
笔记·学习·常驻客栈·深入理解计算机系统·学习笔记‘’
Seraphina3610 小时前
记一次实验:利用路径分隔符进行网页缓存欺骗
经验分享·笔记·安全·网络安全·缓存
AOwhisky10 小时前
Linux 网络服务架设学习笔记(第五期)——Web 服务(上篇):Apache HTTP Server——从静态到动态
linux·运维·服务器·笔记·学习·云计算·apache
摇滚侠11 小时前
《SpringBoot 3:入门与应用实战》第 9 章 使用 WebMvc 开发应用 阅读笔记 1
spring boot·笔记·后端
丰锋ff14 小时前
设计模式学习笔记
笔记·学习·设计模式