1.serials:
ps=pandas.Series(data=None, index=None, dtype=None, name=None, copy=False, fastpath=False)
建议:封装一维数组就行了
2.DataFrame
import pandas as pd# 创建 DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],'Age': [25, 30, 35, 40],'City': ['New York', 'Los Angeles', 'Chicago', 'Houston']
}
df = pd.DataFrame(data)# 查看前两行数据
print(df.head(2))# 查看 DataFrame 的基本信息
print(df.info())# 获取描述统计信息
print(df.describe())# 按年龄排序
df_sorted = df.sort_values(by='Age', ascending=False)
print(df_sorted)# 选择指定列
print(df[['Name', 'Age']])# 按索引选择行
print(df.iloc[1:3]) # 选择第二到第三行(按位置)# 按标签选择行
print(df.loc[1:2]) # 选择第二到第三行(按标签)# 计算分组统计(按城市分组,计算平均年龄)
print(df.groupby('City')['Age'].mean())# 处理缺失值(填充缺失值)
df['Age'] = df['Age'].fillna(30)# 导出为 CSV 文件
df.to_csv('output.csv', index=False)
3 读写文件
1.csv
import pandas as pddf = pd.read_csv('nba.csv')print(df)nme = ["Google", "Runoob", "Taobao", "Wiki"]
st = ["www.google.com", "www.runoob.com", "www.taobao.com", "www.wikipedia.org"]
ag = [90, 40, 80, 98]# 字典
dict = {'name': nme, 'site': st, 'age': ag}df = pd.DataFrame(dict)# 保存 dataframe
df.to_csv('site.csv')
2.xlsx
import pandas as pd# 读取 data.xlsx 文件
df = pd.read_excel('runoob_pandas_data.xlsx')# 打印读取的 DataFrame
print(df)df = pd.DataFrame({
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'City': ['New York', 'Los Angeles', 'Chicago']
})# 将 DataFrame 写入 Excel 文件,写入 'Sheet1' 表单
df.to_excel('output.xlsx', sheet_name='Sheet1', index=False)# 写入多个表单,使用 ExcelWriter
with pd.ExcelWriter('output.xlsx') as writer:
df.to_excel(writer, sheet_name='Sheet1', index=False)
df.to_excel(writer, sheet_name='Sheet2', index=False)import pandas as pd# 使用 ExcelFile 加载 Excel 文件
excel_file = pd.ExcelFile('data.xlsx')# 查看所有表单的名称
print(excel_file.sheet_names)# 读取指定的表单
df = excel_file.parse('Sheet1')
print(df)# 关闭文件
excel_file.close()
4.数据清洗
1.处理缺失值:
删除 dropna
1.DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)axis:默认为 0,表示逢空值剔除整行,如果设置参数 axis=1 表示逢空值去掉整列。
how:默认为 'any' 如果一行(或一列)里任何一个数据有出现 NA 就去掉整行,如果设置 how='all' 一行(或列)都是 NA 才去掉这整行。
thresh:设置需要多少非空值的数据才可以保留下来的。
subset:设置想要检查的列。如果是多个列,可以使用列名的 list 作为参数。
inplace:如果设置 True,将计算得到的值直接覆盖之前的值并返回 None,修改的是源数据。
2 填充充 fillna().
import pandas as pddf = pd.read_csv('property-data.csv')df.fillna(12345, inplace = True)print(df.to_string())
2.独热编码
无法处理数据串
df=pd.get_dummies(variable)