1.pandas new_df = df.reset_index方法会把index变成DataFrame的一列,然后从新使用0..n当作新的索引,如果不想保留原来的索引,使用参数drop=True,inplace参数指定是否改变原始df,True为改变,False不改变,默认不改变,返回一个新的df。
2.pandas的set_index方法,我看知乎上说这个方法不仅用于设置一个列作为索引,而且还有其它用途,比如df的reset_index方法有个默认特性是把索引变成df的一列并启用新的数字索引,而set_index可以把列设置成索引,所以,这两个方法可以说是配对的,因为df的index是不参与运算的,所以,我们可以通过set_index方法把列设置成索引,暂时隐藏起来,要用的时候可以再用reset_index恢复回来,这样在某些时候就会变得非常方便了。
3.找到一些有问题的文件,没有列名,还有一些mdf文件。
4.时间转换
python中时间转换时常会用到,但经常记不住,今天又遇到一个时间转换需求,我需要把一个date字符串,转成时间戳,再把时间戳加上某个数字,再把时间戳转回datetime类型,最后转成字符串
代码如下
import time
from datime import datetime
def convert_time(df,d):
date_str = d + " 00:00:00"
struct_time = time.strptime(date_str, '%Y-%m-%d %H:%M:%S')
timesamp = time.mktime(struct_time)
res = timesamp + df
d = datetime.fromtimestamp(res)
5.pandas循环取出列和行(迭代列)
for index,col in df.items():
print(col)#col是一列,类型是Series
循环行
for row in df.iterrows():
print(row)



