Python数据分析Pandas库数据结构(一)
1.生成一维矩阵模拟数据
import pandas as pd
import numpy as np
s = pd.Series([1,2,3,4,np.nan,9,9])
s2 = pd.date_range('20181201',periods=6)#periods周期
2.生成二维矩阵模拟数据
import pandas as pd
import numpy as np
#(1)创建二维矩阵
df = pd.DataFrame([[1,2,3],[4,5,6],[7,8,9]],columns=list('ABC'),index=data_index)
#(2)创建二维矩阵自动生成
df1 = pd.DataFrame(np.arange(1,10).reshape(3,3),columns=list('ABC'),index=data_index)
df1
#(3)字典的方式
data_index = pd.date_range('20181016',periods=3)
df2 = pd.DataFrame({
'A':[1,2,3],
'B':[4,5,6],
'C':[7,8,9]
},index=data_index)
df2
3.排序
索引操作
1.索引默认从0开始
-
操作列df['列名'] df[['列1','列2'.....]]
-
操作行:df.loc/at[0] df.loc/at[0:3] df.loc/at[[1,5,6]
2.索引被替换为字符串或时间
-
操作列,:根据列名操作,无变化,同上
-
操作行:df.loc[0:3]报错 用df.iloc/iat[0:3]代替
按照条件筛选
-
df[df>0] 取出所有大于0的元素
-
df[df.列名>0] 取出对应列大于0的数据
-
isin([值1,值2..]) 判断数据在列表内.返回True/False
赋值
-
df['新列名'] = 值 创建新列
-
df['列名'] = 新值
-
df.iloc[1:3,'A'] = 值
-
空判断df.isna()返回True/False
-
填充: df.fillna(value=值) ,如果为空,则用值代替
-
删除空值:df.dropna(how=any/all)
import pandas as pd
import numpy as np
#重置索引
df2.iloc[1,2] = np.nan
df2
#判断
df2.isna()
#填充数据
df3 = df2.fillna(value='bb')#替换,把空值得数据替换成bb,不操控原数组,
df3
#删除有空值的数据,整行都删除
df2.dropna()
#当数组索引数据都为空的时候才删除数据
df2.dropna(how='all')
df2
#删除有空值的数据,整行都删除,原数组不变
xx = df2.dropna(how='any')
xx
未完待续~~~~~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律