Python 3.x 查找列计数的非结构化数据
我有来自性能日志的非结构化数据。我想从中获取服务详细信息。我可以使用分隔符,但是我不能计算或打印列,因为它没有任何标题 请帮我解决这个问题Python 3.x 查找列计数的非结构化数据,python-3.x,pandas,pandas-groupby,sklearn-pandas,Python 3.x,Pandas,Pandas Groupby,Sklearn Pandas,我有来自性能日志的非结构化数据。我想从中获取服务详细信息。我可以使用分隔符,但是我不能计算或打印列,因为它没有任何标题 请帮我解决这个问题 import pandas as pd df = pd.read_csv (r'/Users/Myhome/Documents/Py_Learning/log.csv', sep = '|' , skipinitialspace=True) #df = pd.read_csv (r'/Users/Myhome/Documents/Py_Learning/l
import pandas as pd
df = pd.read_csv (r'/Users/Myhome/Documents/Py_Learning/log.csv', sep = '|' , skipinitialspace=True)
#df = pd.read_csv (r'/Users/Myhome/Documents/Py_Learning/log.csv', sep =':|,|[|]', engine='python', header=None) ---> Multi separator is giving error.
#df.groupby("CLIENT")
SERVICE = df.columns[4]
print (SERVICE)
如何在所有行中找到唯一的服务名称并获取计数。我想以图表的形式给出上周的数据
样本数据:
2019-10-22 15:35|Where:CARD|SERVICE:Dell|VERSION:1.0|CLIENT:HDD|OPERATION:boverdue|RESPONSETIME:0034|STATUS:100000:ERR_TRANSACTION_TIMED_OUT|SEVERITY:ERROR|STATUSCODE:SOAP-FAULT|STATUSMESSAGE:NA 2019-10-22 15:35|Where:Digital|SERVICE:Laptop|VERSION:1.0|CLIENT:mouse|OPERATION:connet|RESPONSETIME:3456|STATUS:NO_RECORDS_MATCH_SELECTION_CRITERIA|SEVERITY:INFO|STATUSCODE:1120|STATUSMESSAGE:NA
我不知道数据集的具体情况,但您可以使用
value\u counts
返回唯一的值
您是否尝试了
df[4].unique().count()
。如果可能的话,请提供您的数据头。不。让我试试看,它不起作用,你能提供数据样本吗?AttributeError:'str'对象没有属性'unique'你试过我下面的答案吗?在将数据添加到问题或与之相关的内容时,最好编辑您自己的问题。。。。
df_unique = (df['SERVICE'].value_counts()
.rename_axis('service')
.reset_index(name='COUNT'))