dataframe小技巧
group_by_type_x=lastdata.groupby('col') 分组
a=(list(frame['col'].value_counts()).index) 分组后的组名,即为col里面的元素
获得每组的信息:dataframe.groupby(['col']).get_group(a[i])或者dataframe[dataframe['col']==a[i]]
返回分组组名
typeship=[]
for type_x,group in group_by_type_x:
typeship.append(type_x)
mydata['type_x'].value_counts() 数据框某列元素计数
np.random.permutation(mydata.shape[0]) 索引打乱
mydata.drop(['name','id','type_y','imo'],axis=1) 删除列
data.dropna(axis=0, how='all') 删除表中全部为NaN的行
删除表中任何含有NaN的行 data.dropna(axis=0, how='any')
df.reset_index(drop = True) 重新定义行索引
https://blog.csdn.net/HuaCode/article/details/79763687 Python统计列表(List)中的重复项出现的次数并进行排序
删除重复项
DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)
subset : column label or sequence of labels, optional
用来指定特定的列,默认所有列
keep : {‘first’, ‘last’, False}, default ‘first’
删除重复项并保留第一次出现的项
inplace : boolean, default False
是直接在原来数据上修改还是保留一个副本
https://pandas.pydata.org/pandas-docs/version/0.23/generated/pandas.DataFrame.rolling.html 移动平均
onesog[~onesog['sog'].isin([4270])] 删除数值为4270的
odata.drop(odata.index[[16,17]],inplace=True) 删除行,原数据不会保留删掉的行,默认为False,