pandas使用中的难点

来源:互联网 发布:js invalid signature 编辑:程序博客网 时间:2024/06/06 14:08

1.从excel导入后字段为中文如何处理
在文章开头加入

#!usr/bin/python# -*- coding: utf-8 -*-

2.时间列格式化处理

obj['time']=obj['time'].apply(lambda x:x.strftime('%Y-%m-%d'))

3.时间变成按照小时计算

obj['Use_hours']=obj['Use_hours'].map(lambda x: x/np.timedelta64(1*60, 'm'))

4日期加一天

from datetime import datetime,timedeltai=pd.DataFrame(bjgrouped['finish_date'].apply(lambda x:x+timedelta(days=7)))

5.pandas.dataframe中根据条件获取元素所在的位置(索引)
在dataframe中根据一定的条件,得到符合要求的某行元素所在的位置。
代码如下所示:

df = pd.DataFrame({'BoolCol': [1, 2, 3, 3, 4],'attr': [22, 33, 22, 44, 66]},         index=[10,20,30,40,50])  print(df)  a = df[(df.BoolCol==3)&(df.attr==22)].index.tolist()  print(a)  

df如下所示,以上通过选取“BoolCol”取值为3且“attr”取值为22的行,得到该行在df中的位置
注意:返回的位置为index列表,根据index的不同而不同,这点易于数组中默认的下标。

    BoolCol  attr  10        1    22  20        2    33  30        3    22  40        3    44  50        4    66  [30]  
原创粉丝点击