python中一些我总是记不住的东西
1.更改列名
方法一:修改列名a,b为A、B。
df.columns = ['A','B']
方法二:只修改列名a为A
df.rename(columns={'a':'A'}, inplace = True)
2. 查找需要的某一列
df[df['列名'].isin([相应的值])]
3.查找包含某一字符串的行(2的进阶版)
# 所选的需要查找的列要先转换为字符串形式 f_rate['日期'] = f_rate['日期'].astype('str') f_rate.loc[f_rate['日期'].str.contains('12-30')]
4.去除含有缺失值的行
df.dropna(axis=0, how='any')
5.数据类型转换
df['所属组'].astype('int') # 字符串转浮点型使用astype会报错,使用以下方法 float(num1)
6.python取最后一行
data.iloc[-1] #选取DataFrame最后一行,返回的是Series data.iloc[-1:] #选取DataFrame最后一行,返回的是DataFrame #补充 df['w'] #选择表格中的'w'列,使用类字典属性,返回的是Series类型 df.w #选择表格中的'w'列,使用点属性,返回的是Series类型 df[['w']] #选择表格中的'w'列,返回的是DataFrame属性 data[0:2] #返回第1行到第2行的所有行,前闭后开,包括前不包括后 data[1:2] #返回第2行,从0计,返回的是单行,通过有前后值的索引形式
7. .join()函数
','.join('abc') #将字符串abc中的每个成员以字符','分隔开再拼接成一个字符串”,输出结果为: >>>'a,b,c'
8. 排序
list = [1,2,3,4,5] list.sort() # 会直接改变原列表序列 df = df.sort_values(by="Count_AnimalName",ascending=False)
9. 获取列表中元素所在位置(index)
p=list.index(value)
10. 将某一列变为日期类型
pd.to_datetime(data2['起息日期'])
ps : https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.astype.html
11.删除某一列
df.drop('num',axis=1,inplace=True)
12. python去重
#方法一 df.duplicated(subset = None,keep =‘first’) #方法二 df.drop_duplicates(subset['Seqno'])