数据科学 第 3 章 4:连接mysql、改类型、索引应用

今天开始学习《数据科学手册》,主要学习3-5章,其他的选修。

-- 先连接数据库加载数据:

用sqlalchemy 的create_engine连接:
注意:代码里mysql+pymysql: 这部分不能加空格,否则会报错

import pymysql
import pandas as pd
from sqlalchemy import  create_engine

sql = "select * from sougou"
engine = create_engine('mysql+pymysql://root:[email protected]/xiaom')
df = pd.read_sql(sql,engine,)

查看每列的格式:

RangeIndex: 2324 entries, 0 to 2323
Data columns (total 6 columns):
date 2324 non-null object
id 2324 non-null object
word 2324 non-null object
rank1 2324 non-null object
number1 2324 non-null object
url 2324 non-null object
dtypes: object(6)
memory usage: 109.0+ KB

-- 改rank1、number1的格式

str转int转换为数字:https://vimsky.com/article/36...

data =df
data[['rank1','number1']] = data[['rank1','number1']].apply(pd.to_numeric,errors='coerce')
data

第3章4-6节:索引

-- loc、iloc、ix的运用

1、多重索引 两个条件

data[(data['rank1'] > 10) & (data['number1'] > 10)]

2、loc与iloc的区别:loc[1:3]包含2-4条,iloc为2-3条 ,不含第4条数据

3、行列转换:data.T

4、用iloc取指定行列数据:

data.iloc[1:3,3:4]
data.iloc[:,2:4]
data.iloc[:,:'rank1']  #从前面取到rank1列

5、没怎么懂的pd.MultiIndex.from_tuples(),直接跳过

6、设置索引、索引排序:

set_index(inplace = True) 会在原数据集上修改
sort_index()
reset_index(drop= True) # 重设索引为默认索引

indexdata = data
indexdata.set_index(data['rank1'], inplace = True) 

indexdata.sort_index()

indexdata.reset_index(drop= True)  #重设索引为默认索引

你可能感兴趣的:(python,数据处理)