07-Pandas数据加载

一.读取文本格式数据

pandas提供了一些用于将表格型数据读取为DataFrame对象的函数

最常用:
  • read_csv

从文件中加载带分隔符的数据,默认分隔符为逗号

  • read_table

从文件中加载带分隔符的数据,默认分隔符为制表符

二.读取数据库sqlite数据

  • 导包
import pandas as pd
import sqlite3
  • 读取数据
con = sqlite3.connect("../data/weather_2012.sqlite")
df = pd.read_sql("SELECT * from weather_2012 LIMIT 3", con)
df
  • 设置index_col
df = pd.read_sql("SELECT * from weather_2012 LIMIT 3", con, index_col='id')
df
  • 写数据
weather_df = pd.read_csv('../data/weather_2012.csv')
con = sqlite3.connect("../data/test_db.sqlite")
con.execute("DROP TABLE IF EXISTS weather_2017")
weather_df.to_sql("weather_2017", con)

三.读取数据库mysql数据

  • 读取数据
import pymysql
import pandas as pd

conn = pymysql.connect(host='localhost', port=3306, user='softpo', password='root', db='dushu', charset='utf8')

df = pd.read_sql('select * from books',conn)
display(df.shape,df.head())
读取数据.png
  • 写数据
from sqlalchemy import create_engine  
  
##将数据写入mysql的数据库,但需要先通过sqlalchemy.create_engine建立连接,且字符编码设置为utf8,否则有些latin字符不能处理  
conn = create_engine('mysql+mysqldb://softpo:root@localhost:3306/dushu?charset=utf8')  

df.to_sql('book7',conn,index=False,if_exists='append')

可能遇到问题:ModuleNotFoundError: No module named 'MySQLdb'
解决方法:pip install mysqlclient


写数据.png

四.读取网络数据

  • url获取数据
url = 'https://raw.githubusercontent.com/datasets/investor-flow-of-funds-us/master/data/weekly.csv'
df = pd.read_csv(url)
df.head()

你可能感兴趣的:(07-Pandas数据加载)