pandas数据分析-常用命令

修改列顺序

order = ['id','msg','reason']
df = df[order]

重命名列名

常用:
df.rename(columns={'A':'a','B':'b'},inplace=True)(inplace说明修改原数据)
高级用法示例:大写转成小写,去除头尾空格(strip)用替换空格
df.rename(columns=lambda x:x.strip().lower().replace(' ',"
"),inplace=True)

数据清理

检查冗余值 df.duplicated()
删除冗余值 df.drop_duplicates(inplace=True)

重置索引,使用groupby后,索引可能有多重列,可将索引中多字段列重新分割普通列:

df.reset_index()

value_counts()返回的series,转成dataframe,进行下一步的分析

test=pd.DataFrame(msg)

lambda if else

lambda x: 1 if x>0 else 0

拼接两个列名相同的dataframe

df = pd.concat([df,msg],axis=0,ignore_index=True)

存储字典的list可以直接转化为dataframe

拼接两个dataframe,

pd.merge(df1,df2) 相当于sql, join的左连接

字符串截取

str[0:4] #截取第一位和第四位的字符
str[:-1] #截取从开头到倒数第一位的字符

python遍历list的方式:

for i,val in range(len(temp)):
for i,val in enumerate(temp):

找到含缺失值的含数据(没有冗余):

df[df.isnull().values==True].drop_duplicates()

合并列表

append()向列表尾部追加一个元素,只占一个索引位
extend()像列表尾部追加一个李彪,将列表2中 的每个元素都追加进列表1 .

  • 与extend同
    +=同extend

list,series,tuple,转字符串,用法相同

str=','.join(str(i)for i in list)

字符串转dict,list

eval(str)

使用groupby分组下使用list(set)合并其他列数据

df1 = df2.groupby(['ip']).aggregate(lambda x:set(x))

遍历set ,list 的方式

for i in data:

import time

输入毫秒级的时间,转出正常格式的时间

def timeStamp(timeNum):
timeStamp = float(timeNum/1000)
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y.%m.%d", timeArray)
return otherStyleTime

dataframe转换数据格式,可以在df后添加相应列名,可以单独转化,string,int,float,object互转

df= df.astype('str')

读取json文件

import json
with open('psth','r') as load_f:
load_dict = json.load(load_f)
ioc_list=[]

遍历dict

for k,v in load_dict.items():

你可能感兴趣的:(pandas数据分析-常用命令)