相关文章推荐
光明磊落的墨镜  ·  pandas ...·  2 周前    · 
挂过科的机器猫  ·  [Python] Pandas ...·  1 周前    · 
data.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)

1-1 axis确定删除存在缺失值的行或者是列

#删除含有缺失值的行 axis=0或axis='index’ #删除含有缺失值的列 axis=1或axis='columns’

1-2 how 确定存在缺失值时,是否删除行或者列

how='all’或how=‘any’。 how='all’时表示删除全是缺失值的行(列) how='any’时表示删除只要含有缺失值的行(列)

1-3 thresh=n表示保留至少含有n个非na数值的行

data.dropna(thresh=2)

1-4 subset确定要在哪些列中查找缺失值

#在source和target两列中查找缺失值 data.drop(subset = ["source","target"])

1-5 inplace确定是否直接在原DataFrame修改

#删除缺失值后不在原data上修改 inplace = False #删除缺失值后在原data上修改 inplace = True

2.data.drop

默认参数: data.drop( labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise',

2-1 labels 指定行或者列的名称

#参数axis为0表示在0轴(列)上搜索名为“姓名”的对象,然后删除对象“姓名”对应的行。 data.drop("姓名",axis = 0) #参数axis为0表示在1轴(行)上搜索名为“姓名”的对象,然后删除对象“姓名”对应的列。 data.drop("姓名",axis = 1)

2-2 index 指定要删除的行

#删除data中索引为0和1的行 data.drop(index = [0,1])

2-3 columns 指定要删除的列

#删除data中列名为“source”和“target”的列 data.drop(columns=['source', 'target'])

任务需求:删掉“ZH_Term_len”列中值为0的全部行。

3-1 统计0的数量

#统计“ZH_Term_len”一列中有多少个0 data["ZH_Term_len"].value_counts()

3-2 找出0的索引

data[(data.ZH_Term_len == 0)].index.tolist()

3-3 使用drop函数以及index参数删除所在的行

data = data.drop(index = data[(data.ZH_Term_len == 0)].index.tolist())

3-4 查看数据

data.info()

3-5 将索引重新排序

#会将标签重新从零开始顺序排序,使用参数设置drop=True删除旧的索引序列 data = data.reset_index(drop=True)

3-6 统计“ZH_Term_len”列中值的数量

统计后发现,“ZH_Term_len”列中值为0的行已经全部被删除掉。

用loc过滤df。 “~”表示你想要与你的情况相反。 “:”表示希望保留所有列。 在条件中:“&”表示并,“|”表示或 df_AIS=df_AIS.loc[((df_AIS['航 状态']==1)&(df_AIS['航速']!=0)&(df_AIS['时间']!=0)),:] 上述代码表示选取航 状态为1,航速不为0,时间不为0的航段 df_AIS=df_AIS.loc[~((df_AIS['航 状态']==1)&(df_AIS['航速']!=0 该函数目的是用于滤除缺失数据。如果对象是Series,则返回一个仅含非空数据和索引 的Series,默认丢弃含有缺失 。 对象.dropna()。DataFrame则不一样了: data.dropna(how = 'all') # 传入这个参数后将只丢弃全为缺失 的那些 data.dropna(axis = 1) # 丢弃有缺失 的列(一般不会这么做,这样会删掉一个特征) data.dropna(axis=1,how="all") # 丢弃全为缺失 的那些列 data.dro... 本文详细介绍了 pandas 运用.drop()方法 删除 特定 与列的方,包括 按条件 删除 、多 、单列、多列、多条件 删除 与数据框替换应用实例讲解,对于初学者是很好的教材,对于有经验的使用者,是一个备查工具。 df = df.drop('column_name', axis=1) 需要注意的是,默认情况下, 删除 的是 (即axis=0)。如果想要永久 删除 ,需要将结果赋 回原来的DataFrame中。 以上就是 pandas 删除 某列 数据的用法,drop()相对于del()来说,灵活性更高,更为实用。(2)、没有加入inplace参数,默认不会对原来数据进 修改,需要将结果赋 给新的变量。对象,使用 pandas 读取数据文件后,数据就以DataFrame数据结构存储在内存中。注意(1)、 删除 列的操作时,axis参数不可省,因为axis默认为0( );此操作会对原数据df进 删除 ,且一次只能 删除 一列。注DataFrame是最常用的。语法deldf[‘列名’]实例3同时 删除 多列。......