美文网首页
DataFrame常见数据处理方式

DataFrame常见数据处理方式

作者: xiaoguo16 | 来源:发表于2017-11-22 15:36 被阅读0次

把数据变为DataFrame格式

data={"one":[1,2,3],"two":[1,2,3]}
df=pd.DataFrame(data)

获取某一列的数据

df=pd.read_csv('output.csv')
#获取“firstSeenSrcIp”列,srcIp为Series数据结构
srcIp=df[u'firstSeenSrcIp']

获取某一行的数据

a=df.ix["name"][0]
#获取name行的第一个数据

DataFrame中某一列中不同元素计数

#startTime为列名
 timeCounts=df[u'startTime'].value_counts()

对dataframe遍历

本例子将Series格式的timeCounts先转换为dataframe结构在进行遍历。

 timeCounts=pd.DataFrame(timeCounts)       
 result={}
 for index, row in timeCounts.iterrows():  
     result[index]=row.values[0]

python将csv文件转为dataframe格式

df=pd.read_csv('test.csv')

根据dataframe中的某一列的值进行过滤

根据正则过滤

 data=df[df['parsedDate'].str.contains(r'^(2013-04-06 11:){1}(09|10|11|12|13|14|15|16|17|18|19|20):([0-9])+')] 

根据列的数据值进行过滤

data=df[df['TimeSeconds']<10]
#TimeSeconds为整型

把dataframe导入到csv文件中

with open('outputTest.txt', 'w') as fout:
   df=pd.read_csv('test.csv')
   df.to_csv(fout, encoding='utf-8', index=False)

dataframe排序:根据某一列的值

#TimeSeconds为列ming
 data=data.sort(['TimeSeconds'],ascending=True)

排序:根据索引值

df.sort_index(inplace=True)
#inplace如果手动设定为 True,那么原数组就可以被替换。

更改某一列值的数据类型

#将该列数据变为字符串
df[u'firstSeenSrcPort'].astype('string')

重新建立索引

#删除原来的索引,重新建立由0开始的索引
obj4 = obj3.reset_index(drop=True)  

不同的dataframe的数据合并

#先形成list结构
frames = [df1, df2, df3]
#利用concat函数
result = pd.concat(frames)

相关文章

网友评论

      本文标题:DataFrame常见数据处理方式

      本文链接:https://www.haomeiwen.com/subject/pmtovxtx.html