pandas创建DataFrame的7种方法小结

  • Post category:Python

pandas创建DataFrame的7种方法小结

在使用pandas进行数据处理时,DataFrame是我们经常需要创建和操作的数据结构。本文将介绍七种创建DataFrame的方法,希望能够帮助大家快速高效地处理数据。

方法一:从Python字典创建DataFrame

import pandas as pd

# 创建字典
data = {"name":["LiLei", "Lucy", "Jim", "Tom"], 
        "age":[18, 20, 19, 22], 
        "sex":["F", "F", "M", "M"]}

# 从字典创建DataFrame
df = pd.DataFrame(data)

方法二:从Numpy数组创建DataFrame

import pandas as pd
import numpy as np

# 创建3行4列的随机矩阵
data = np.random.rand(3,4)

# 从数组创建DataFrame
df = pd.DataFrame(data, columns=["A", "B", "C", "D"])

方法三:从CSV文件创建DataFrame

import pandas as pd

# 读取csv文件
df = pd.read_csv("data.csv")

方法四:从Excel文件创建DataFrame

import pandas as pd

# 读取Excel文件
df = pd.read_excel("data.xlsx")

方法五:从SQL数据库创建DataFrame

import pandas as pd
from sqlalchemy import create_engine

# 数据库连接信息
db_info = {"user":"root", "passwd":"123456", "host":"localhost", "db":"test", "charset":"utf8mb4"}

# 数据库连接
engine = create_engine("mysql+pymysql://%s:%s@%s/%s?charset=%s" % (db_info["user"], db_info["passwd"], db_info["host"], db_info["db"], db_info["charset"]))

# SQL查询语句
sql = "SELECT * FROM test_table"

# 从SQL查询结果创建DataFrame
df = pd.read_sql(sql, engine)

方法六:使用pandas提供的API创建DataFrame

import pandas as pd

# 创建一个空的DataFrame
df = pd.DataFrame()

# 从行向量创建DataFrame
df = pd.DataFrame({"A":[1,2,3], "B":[4,5,6]})

# 从列向量创建DataFrame
df = pd.DataFrame({"A": pd.Series([1, 2, 3]), "B": pd.Series([4, 5, 6])})

方法七:从其它数据结构创建DataFrame

import pandas as pd

# 从列表创建DataFrame
df = pd.DataFrame([[1,2,3], [4,5,6], [7,8,9]], index=["row1", "row2", "row3"], columns=["col1", "col2", "col3"])

# 从字典列表创建DataFrame
data = [{"name":"LiLei", "age":18}, {"name":"Lucy", "age":20}, {"name":"Jim", "age":19}]
df = pd.DataFrame(data)

示例1:从字典列表创建DataFrame

假设我们有以下数据表格:

name age
LiLei 18
Lucy 20
Jim 19

我们可以用以下代码将它转换成DataFrame:

import pandas as pd

# 创建字典列表
data = [{"name":"LiLei", "age":18}, 
        {"name":"Lucy", "age":20}, 
        {"name":"Jim", "age":19}]

# 从字典列表创建DataFrame
df = pd.DataFrame(data)

示例2:使用pandas提供的API创建DataFrame

我们可以使用pandas提供的API函数创建一个空的DataFrame:

import pandas as pd

# 创建一个空的DataFrame
df = pd.DataFrame()

# 操作DataFrame
df["id"] = [1,2,3]
df["name"] = ["LiLei", "Lucy", "Jim"]
df["age"] = [18, 20, 19]

以上为7种创建DataFrame的常用方法,相信大家已经掌握,愿对大家的数据处理工作有所启示。