Pandas_sqlite

在Pandas中使用SQLite数据库进行数据操作是一个常见的任务,尤其是在数据分析和数据科学领域。以下是一个简单的示例,展示如何在Pandas中使用SQLite数据库进行数据的读取、写入和查询。

步骤 1: 安装必要的库

首先,确保你已经安装了Pandas和SQLite的库。如果没有安装,可以通过以下命令安装:

bash 复制代码
pip install pandas sqlite3

步骤 2: 创建SQLite数据库和表

在这个例子中,我们将创建一个简单的SQLite数据库,并在其中创建一个表。

python 复制代码
import sqlite3
import pandas as pd

# 连接到SQLite数据库
# 如果文件不存在,会自动在当前目录创建一个数据库文件
conn = sqlite3.connect('example.db')

# 创建一个cursor对象
cursor = conn.cursor()

# 创建一个表
cursor.execute('''
CREATE TABLE IF NOT EXISTS employees (
    id INTEGER PRIMARY KEY,
    name TEXT NOT NULL,
    salary REAL
)
''')

# 提交事务
conn.commit()

# 关闭连接
conn.close()

步骤 3: 向表中插入数据

我们可以使用Pandas的DataFrame来插入数据。

python 复制代码
# 创建一个DataFrame
data = {
    'name': ['Alice', 'Bob', 'Charlie'],
    'salary': [50000, 60000, 65000]
}
df = pd.DataFrame(data)

# 再次连接数据库
conn = sqlite3.connect('example.db')

# 将数据插入到SQLite表中
df.to_sql('employees', conn, if_exists='append', index=False)

# 提交事务
conn.commit()

# 关闭连接
conn.close()

步骤 4: 从表中读取数据

现在,我们可以从SQLite表中读取数据到Pandas DataFrame。

python 复制代码
# 连接数据库
conn = sqlite3.connect('example.db')

# 从SQLite表中读取数据
df = pd.read_sql_query("SELECT * FROM employees", conn)

# 显示DataFrame
print(df)

# 关闭连接
conn.close()

步骤 5: 更新和删除数据

你还可以更新或删除表中的数据。

python 复制代码
# 连接数据库
conn = sqlite3.connect('example.db')

# 更新数据
cursor = conn.cursor()
cursor.execute("UPDATE employees SET salary = 55000 WHERE name = 'Alice'")
conn.commit()

# 删除数据
cursor.execute("DELETE FROM employees WHERE name = 'Charlie'")
conn.commit()

# 再次读取数据查看更新结果
df = pd.read_sql_query("SELECT * FROM employees", conn)
print(df)

# 关闭连接
conn.close()

这个例子展示了如何在Pandas中使用SQLite进行基本的数据库操作,包括创建表、插入数据、读取数据、更新和删除数据。这些操作是数据分析和数据科学项目中常见的任务。

相关推荐
用户8356290780514 小时前
无需 Office:Python 批量转换 PPT 为图片
后端·python
markfeng86 小时前
Python+Django+H5+MySQL项目搭建
python·django
GinoWi7 小时前
Chapter 2 - Python中的变量和简单的数据类型
python
JordanHaidee7 小时前
Python 中 `if x:` 到底在判断什么?
后端·python
ServBay7 小时前
10分钟彻底终结冗长代码,Python f-string 让你重获编程自由
后端·python
闲云一鹤7 小时前
Python 入门(二)- 使用 FastAPI 快速生成后端 API 接口
python·fastapi
Rockbean8 小时前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
曲幽9 小时前
FastAPI + Ollama 实战:搭一个能查天气的AI助手
python·ai·lora·torch·fastapi·web·model·ollama·weatherapi
用户606487671889610 小时前
国内开发者如何接入 Claude API?中转站方案实战指南(Python/Node.js 完整示例)
人工智能·python·api
只与明月听11 小时前
RAG深入学习之Chunk
前端·人工智能·python