pandas、numpy功能整理,包括机器学习的部分库
时间:2022-07-25
本文章向大家介绍pandas、numpy功能整理,包括机器学习的部分库,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Pandas:
删除:1按列名
dfarr1=dfarr.drop(dfarr[dfarr.pointxy=='长泰县长泰一中'].index)
删除dfarr.pointxy字段=='长泰县长泰一中'的值
删除的时候也可以这么写:
dfarr1=dfarr.drop(dfarr[dfarr['pointxy']=='长泰县长泰一中'].index)
2 按列序号
nmovetif=movetif.drop(movetif[movetif.iloc[:,0]==0].index)
删除列
test_dict_df.drop(['id'],axis=1)
批量删除
ak3.drop(ak3.columns[22:], axis=1, inplace=True)
ak3.drop(ak3.columns[[0,2,3,5,6]], axis=1, inplace=True)
同时:
a.drop(a[(a['a']==b['a'][0]) & (a['b']==b['b'][0])].index)
t3.columns=['k']#命名列的名字
t1=t1.rename(columns={'风速(m/s)':'fs'})#修改名字
调换列的顺序
a=pd.Dataframe(plarr)
b=['pm','lon','lat','qy','wd','sd','fs','t7','t8','t9','t10','t11','t12','t13','t14','t15','t16','t17','t18','t19','t20','t21','t22','t23','t24','t25']
a=a[b]
#按行求和
df['row_sum'] = df.apply(lambda x: x.sum(), axis=1)
#按列求和
df.loc['col_sum'] = df.apply(lambda x: x.sum())
pandas 合并
取数据框中部分数据合并
df1=pd.DataFrame({'a1':[1,2,3],'a2':[4,5,6]})
df2=pd.DataFrame({'a1':[7,2,3],'a2':[4,5,7]})
df3=pd.concat([df1,df2['a2']],axis=1)
merge方法:左连接、右连接,是不是和数据库的合并(join)相似
applymap()
eval()
列提取,第一列
ak2.loc[:,['Site_Latitude(Degrees)','Site_Longitude(Degrees)']]
也可以这么写,用列的名字指代列的顺序
df.iloc[i,j]###按位置取数据
按列名提取数据
a['Time(hh:mm:ss)'],其中引号内的信息可以自动填补
重新排列索引
df1.reset_index(drop=True, inplace=True)
选取特定行
temp=aodnet[aodnet['AERONET_Site_Name'].isin(['Beijing'])]
temp=aodnet[aodnet.AERONET_Site_Name=='Beijing']
示例
有一个pd数组,两列数据,一个标签一个数值,希望标签大于2的数值变为3
已有DataFrame(long),现在想新建一个DataFrame(tCG),但是保有原来a的索引:
long=ac['Site_Longitude(Degrees)']##其中long为Series
tCG=pd.DataFrame(np.ones(len(long)),columns=['tCG'],index=long.index)
long=pd.DataFrame(long)
提取某些列,而不是靠删除
t=tempa1.iloc[np.array(tempa1[tempa1['Day_of_Year']==1].index)]
按条件多选
去重
a=alldataday.drop_duplicates(['lat','lon','doy','mod'], keep='last')
原来500+条,现在400+
['lat','lon','doy','mod']代表4列数据,last 代表保存后面那个
想要从一个数组中删除另一个数组,两个办法,一个是减法,一个是加法
上面是加法,下面是减法
Pandas groupy分组计算
a1=dfarr[dfarr.pm25!=999999]
group=a1.groupby([a1['xian'],a1['quarter']])
b=group.mean()
b.to_csv('D:/minxinan/temp/pm.csv',encoding='gbk')
时间戳
c=pd.to_datetime(b['Date(dd:mm:yyyy)'],format='%d:%m:%Y')
d=c.dt.year
合并到b中
如果是不知道怎么把数据转化成标准的时分秒格式,如:
ab=pd.to_datetime(a['Time(hh:mm:ss)'],format='%H:%M:%S')
Numpy:
ps 作者这段时间心情很糟糕,numpy就不想写了
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法