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进行基本的数据库操作,包括创建表、插入数据、读取数据、更新和删除数据。这些操作是数据分析和数据科学项目中常见的任务。

相关推荐
小赖同学啊1 小时前
物联网数据安全区块链服务
开发语言·python·区块链
码荼2 小时前
学习开发之hashmap
java·python·学习·哈希算法·个人开发·小白学开发·不花钱不花时间crud
小陈phd3 小时前
李宏毅机器学习笔记——梯度下降法
人工智能·python·机器学习
kk爱闹3 小时前
【挑战14天学完python和pytorch】- day01
android·pytorch·python
Blossom.1183 小时前
机器学习在智能建筑中的应用:能源管理与环境优化
人工智能·python·深度学习·神经网络·机器学习·机器人·sklearn
亚力山大抵3 小时前
实验六-使用PyMySQL数据存储的Flask登录系统-实验七-集成Flask-SocketIO的实时通信系统
后端·python·flask
showyoui3 小时前
Python 闭包(Closure)实战总结
开发语言·python
amazinging4 小时前
北京-4年功能测试2年空窗-报培训班学测开-第四十一天
python·学习·appium
amazinging4 小时前
北京-4年功能测试2年空窗-报培训班学测开-第三十九天
python·学习·appium
m0_723140234 小时前
Python训练营-Day42
python