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

相关推荐
青山是哪个青山8 小时前
LangChain 学习笔记(四):Message 与提示词模板
笔记·学习·langchain
Shell运维手记11 小时前
Linux 常用基础命令学习笔记
linux·运维·笔记·学习·算法·github
FakeOccupational12 小时前
【电路笔记 STM32】Cortex-M7 内核上的数据缓存(D-Cache)结构+MPU+DMA&Cache+STM32CubeMX配置
笔记·stm32·缓存
动词ing12 小时前
【学习笔记】C语言(数组指针与指针数组+字符数组+函数+参数传递+字符串作为形参+递归函数+指针函数+回调函数+结构体嵌套+内存动态分配函数)
c语言·笔记·学习
z落落14 小时前
C# Modbus-ASCII 超详细完整笔记(协议原理+LRC算法+读写源码全拆解)
笔记
hanlin0316 小时前
刷题笔记:力扣第189题-轮转数组
笔记·算法·leetcode
xqqxqxxq17 小时前
Redis 五大常用数据类型 + 通用命令笔记
数据库·redis·笔记
zjnlswd17 小时前
c# 刘铁猛 学习笔记
笔记·学习
LuminousCPP17 小时前
单链表专题(三)-刷题复盘篇:从快慢指针到环形链表 II 数学推导
数据结构·经验分享·笔记·学习·算法·链表
3A Cloud18 小时前
从「心即理」到提示词工程:深度解析 ClawHub 上的阳明心学技能(yangming-xinxue)
人工智能·笔记