(1)取某列等于某个值的所有行数据
df.loc[df['A']==999]
(2)datetime作为索引取行数据
# 第一种方式
df_index = list(df.index)
for index in df_index:
tmp = df.loc[[str(index)]]
# 第二种方式
df_index = list(df.index)
for index in df_index:
tag = df.loc[str(index),'B']
(3)取某列等于某个值的所有行
df = df[df.tag==False]
(4)合并list中的dataframe
df_list = [df1,df2,df3]
all_df = pd.concat(df_list)
(5)将某一列作为index索引
df.set_index(["Column"], inplace=True)
(6)根据index索引排序
df.sort_index(inplace=True)
(7)利用tqdm对一列进行处理
from tqdm import tqdm
tqdm.pandas()
def clearTxt(line):
if line != '':
line = line.strip()
#去除文本中的英文和数字
line = re.sub("[a-zA-Z0-9]", "", line)
#去除文本中的中文符号和英文符号
line = re.sub("[\s+\.\!\/_,$%^*(+\"\';:“”.]+|[+——!,。??、~@#¥%……&*()]+", "", line)
#分词
segList = jieba.cut(line, cut_all=False)
segSentence = ''
for word in segList:
if word != '\t':
segSentence += word + " "
return segSentence.strip()
train_data['Text'].progress_apply(clearTxt)
(8)将city一列拆分为city1和city2两列
df['city1'] = df['city'].map(lambda x:x.split("|")[0])
df['city2'] = df['city'].map(lambda x:x.split("|")[1])
(9)属性列重命名
#方法一:修改列名a,b为A、B。
df.columns = ['A','B']
# 方法二
df.rename(columns={'a':'A'})
(10)删除有缺失值的行
删除空行
train.dropna(axis=0, how='any', inplace=True)
判断某行的值为空,值为nan
pd.isnull(value)
检查某行或某列的缺失值
df.isnull().any() 用来判断某列是否有缺失值
df.isnull().all() 用来判断某列是否全部为空值
(11)按日期datetime排序
Date,Last
2016-12-30,1.05550
2016-12-29,1.05275
2016-12-28,1.04610
2016-12-27,1.05015
2016-12-23,1.05005
df = pd.read_csv('data',sep=',')
print (df.head())
Date Last
0 2016-12-30 1.05550
1 2016-12-29 1.05275
2 2016-12-28 1.04610
3 2016-12-27 1.05015
4 2016-12-23 1.05005
df = df.sort_values(by = 'Date')
Date Last
4 2016-12-23 1.05005
3 2016-12-27 1.05015
2 2016-12-28 1.04610
1 2016-12-29 1.05275
0 2016-12-30 1.05550
df.reset_index(inplace=True)
del df['index']
print (df.head())
Date Last
0 2016-12-23 1.05005
1 2016-12-27 1.05015
2 2016-12-28 1.04610
3 2016-12-29 1.05275
4 2016-12-30 1.05550
(12)删除满足某条件的行
df_clear = df.drop(df[df['x']<0.01].index)
# 也可以使用多个条件
df_clear = df.drop(df[(df['x']<0.01) | (df['x']>10)].index) #删除x小于0.01或大于10的行