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

相关推荐
世界宇宙超级无敌究极特级顶级第一非常谱尼39 分钟前
RF Power Amplifiers for Wireless Communications 第二章学习笔记
笔记·学习·pa·功率放大器·mmic
霸王大陆40 分钟前
《零基础学PHP:从入门到实战》教程-模块八:面向对象编程(OOP)入门-5
开发语言·笔记·php·课程设计
摇滚侠41 分钟前
2025最新 SpringCloud 教程,接口测试,本地事务,打通链路,笔记65,笔记66,笔记67
笔记·spring·spring cloud
im_AMBER42 分钟前
Leetcode 71 买卖股票的最佳时机 | 增量元素之间的最大差值
笔记·学习·算法·leetcode
永远都不秃头的程序员(互关)42 分钟前
鸿蒙Electron平台:Flutter技术深度解读及学习笔记
笔记·学习·flutter
ranchor66643 分钟前
pandas 模拟题
开发语言·python·pandas
思成不止于此1 小时前
MySQL 查询进阶(二):行筛选与条件查询
数据库·笔记·学习·mysql
摇滚侠1 小时前
ElasticSearch 教程入门到精通,测试工具、倒排索引、索引创建查询删除,笔记6、7、8、9
大数据·笔记·elasticsearch
就叫飞六吧1 小时前
WebService 与 REST 的区别
笔记
AI视觉网奇1 小时前
android yolo12 android 实战笔记
android·笔记·yolo