我正在用python做mapreduce,我的csv文件如下所示,
trip_id taxi_id pickup_time dropoff_time ... total
0 20117 2455.0 2013-05-05 09:45:00 50.44
1 44691 1779.0 2013-06-24 11:30:00 66.78
我的密码是,
import pandas as pd
import numpy as np
from mrjob.job import MRJob
class MRCount(MRJob):
def mapper(self, _, line):
datarow = line.replace(' ','').replace('N/A','').split(',')
trip_id = datarow[0]
total = datarow[14]
total = np.float(total)
yield ((trip_id), (total))
因为我的代码将所有行传递给mapper,所以它以字符串行(索引)开始,但是我想用total来执行,total是float,所以当我运行文件时,它会出错
TypeError: float() argument must be a string or a number, not 'generator'
在处理mapper函数时,如何跳过csv文件中的第一行?
1条答案
按热度按时间368yc8dk1#
不确定“line”到底有什么内容。对你的问题的一个简单的答案是只尝试/除了浮动。