问题描述
最近~ 发现对series里的元素操作挺复杂的,用for loop + Series.iloc[i]会发生卡死的状况,那么,lambda是解决办法:
error 1
ratings['timestamp'] = ratings['timestamp'].apply(ratings['timestamp'].iloc[i].strftime("%Y-%m-%d %H:%M:%S", ts) for i in range(len(ratings)))
TypeError: 'generator' object is not callable
用lambda直接apply,就相当于对每一行的每个元素,逐一apply:
ratings_sub['timestamp'] = ratings_sub['timestamp'].apply(lambda x:time.strftime('%Y/%m/%d',time.localtime(x)))
补充:DataFrame与Series数值的运算
原则一:
运算结果返回全部出现的索引
原则二:
相同索引相加
原则三:
任何值与nan做算术运算 结果为nan
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:- python-pandas创建Series数据类型的操作
- python 遍历pd.Series的index和value
- Python3.5 Pandas模块之Series用法实例分析
- 在python中pandas的series合并方法
- 浅谈python的dataframe与series的创建方法
- Python Series从0开始索引的方法
- python pandas中对Series数据进行轴向连接的实例
- python pandas 对series和dataframe的重置索引reindex方法