ich möchte eine python-Datei für einen MR-Jobs erstellen und habe dazu folgende csv Datei:
Ziel ist die Zeiten von Station1 bis Station5 zu addieren und zusammen mit dem Produktnamen (Produktname ist immer gleich) auszugeben.Timestamp,Produktname,Produkt_ID,Station1,Transport12,Station2,Transport23,Station3,Transport34,Station4,Transport45,Station5
2022-01-31 05:43:48.259893,Baseball,140499318896400,2.027,1.315,6.909,1.298,-4.039,0.9,1.344,0.972,10.031
2022-01-31 05:53:50.119893,Baseball,140499318897424,0.959,1.676,7.695,1.029,9.518,0.942,1.488,0.977,5.518
2022-01-31 05:59:21.199893,Baseball,140499318897200,3.528,0.788,10.93,1.855,8.214,0.702,-0.141,1.426,5.294
2022-01-31 06:04:38.839893,Baseball,140499318896400,3.201,1.755,5.46,0.422,6.667,0.567,1.108,0.628,2.827
2022-01-31 06:07:28.459893,Baseball,140499318897424,4.001,0.917,7.239,1.363,4.586,0.385,0.417,1.182,5.008
2022-01-31 06:12:28.939893,Baseball,140499318897200,1.418,0.611,6.102,0.625,2.436,1.334,0.865,1.031,3.235
2022-01-31 06:15:43.039893,Baseball,140499318896400,3.918,0.641,6.925,1.271,9.658,0.481,0.951,0.678,3.666
Mein bisheriger Code:
Code: Alles auswählen
from mrjob.job import MRJob
from mrjob.step import MRStep
class Bearbeitungszeit(MRJob):
def steps(self):
step_1 = MRStep(mapper=self.zaehle_bearbeitungszeit)
steps = [step_1]
return steps
def zaehle_bearbeitungszeit(self, _,value):
(Timestamp,Produktname,Produkt_ID,Station1,Transport12,Station2,Transport23,Station3,Transport34,Station4,Transport45,Station5) = value.split(",")
Nettobearbeitungszeit= Station1, Station2, Station3, Station4, Station5
yield Produktname,Nettobearbeitungszeit
pass
if __name__ == "__main__":
Bearbeitungszeit.run()
Code: Alles auswählen
"Baseball" ["2.027", "6.909", "-4.039", "1.344", "10.031"]
"Baseball" ["0.959", "7.695", "9.518", "1.488", "5.518"]
"Baseball" ["3.528", "10.93", "8.214", "-0.141", "5.294"]
"Baseball" ["3.201", "5.46", "6.667", "1.108", "2.827"]
"Baseball" ["4.001", "7.239", "4.586", "0.417", "5.008"]
"Baseball" ["1.418", "6.102", "2.436", "0.865", "3.235"]
"Baseball" ["3.918", "6.925", "9.658", "0.951", "3.666"]
Weiß jemand, wie sich die Zahlen / Tupel umwandeln lassen, damit sie addiert werden können und am Ende nur noch ein Wert existiert?
Vielen Dank vorab!