pandas包read_csv函数中的converters问题
首先,test.data文件里面内容为:
1,2,3
1,2,3
1,2,3
python3 代码如下:
import pandas as pd
from collections import defaultdict
def fun(x):
x = int(x)+1
return x
converters1 = {i: fun for i in range(3)}
converters2 = defaultdict(lambda: fun)
d1 = pd.read_csv('./test.data', header=None, converters=converters1)
d2 = pd.read_csv('./test.data', header=None, converters=converters2)
输出:
问题是为什么用converters1出来的结果就是对的,而converters2出来的结果是错的?
其他参考输出:
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
因为内部使用的是get方法吧(一般不会直接用d[k]这种索引方式):
所以自然就不做conversion