python常用功能总结

一、数据读写

1.1、mysql数据读写

import pandas as pd
from sqlalchemy import create_engine

# 数据库连接字符串
conn = create_engine(
        'mysql+pymysql://username:password@ip:port/database'
        # mysql+pymysql://用户: 密码@url: 端口/数据库
    )

# 数据准备
data = {
    'id': [1, 2, 3, 4],
    'name': ['zs', 'ls', 'ww', 'ml']
}
df = pd.DataFrame(data)

# 数据写入表
df.to_sql('table_name', con=conn, index=False, if_exists='replace')

# 从表中读取数据
df = pd.read_sql_table('table_name',conn)

# 使用sql语句查询数据
sql_str = """
    with tab as (
        select * from table_name t where t.name = 'zs'
    )
    select * from tab
"""
df = pd.read_sql(sql_str,conn)

1.2、csv文件读写

1.2.1、多字符分隔符读写

import pandas as pd
import numpy as np


# 数据准备
data = {
    'id': [1, 2, 3, 4],
    'name': ['zs', 'ls', 'ww', 'ml']
}
df = pd.DataFrame(data)

# 数据写入文件
np.savetxt('file.txt', df, delimiter='|@|', fmt='%s',encoding='utf-8')


# 从文件中读取数据,分隔符为:|@|
df = pd.read_csv('file.txt', sep='\|\@\|', quoting=3)

1.2.2、正则分隔符读写

# 文件路径
datafile = './data/housing.data'

# 文件中分隔符有的单个空格,有的多个空格
df = pd.read_csv(datafile, sep=r'\s*[ ]\s*')

二、数据类型转换

2.1、list与Series互转

# 定义list 变量 a
a = [15,13,18,6,9,30,12]

# list 转 Series
sa = pd.Series(a)


# Series 转 list
a1 = sa.to_list()

2.2、Series与DataFrame互转

# Series 转 DataFrame
# 1.使用DataFrame函数
df1 = pd.DataFrame(sa,columns=['NO.'])

# 2.使用to_frame函数
df2 = sa.to_frame(name='NO.')


# DataFrame 转 Series
sa1 = df1['NO.']

三、Series常用函数

3.1、常用聚合函数

# 定义list 变量 a
a = [15,13,18,6,9,30,12]

# list 转 Series
sa = pd.Series(a)


# 求和、总数、最大值、最小值、中位数、平均数、标准差、方差
sa.sum(),sa.count(),sa.max(),sa.min(),sa.median(),sa.mean(),sa.std(),sa.var() 

3.2、聚合函数的组合使用

sa.agg(['sum', 'count', 'max','min','median','mean','std','var'])

四、DataFrame常用函数

4.1、创建DataFrame

4.1.1、列表创建

data = [
    ['ZS', 25, 'BeiJing'],
    ['LS', 22, 'ShangHai'],
    ['WW', 21, 'HeNan']
]
df = pd.DataFrame(data, columns=['name', 'age', 'city'])

4.1.2、列表嵌套字典创建

data = [
    {'name': 'ZS', 'age': 25, 'city': 'BeiJing'},
    {'name': 'LS', 'age': 22, 'city': 'ShangHai'},
    {'name': 'WW', 'age': 21, 'city': 'HeNan'}
]
df = pd.DataFrame(data)

4.1.3、字典嵌套列表创建

data = {
    'name' : ['ZS','LS','WW'],
    'age' : [25,22,21],
    'city' : ['BeiJing','ShangHai','HeNan']
}
df = pd.DataFrame(data)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值