The 5th column of my DataFrame is a list of floats. I want to replace the list with the maximum value from the list. How could I do so?
I'm trying this but I get an error:
import pandas as pd
import numpy as np
colNames = ['unixTime', 'sampleAmount','Time','samplingRate', 'Data']
data = pd.read_csv("project_fan.csv", sep = ';', error_bad_lines = False, names = colNames)
print(data.head())
data['Data'] = [float(x) for x in data.Data.values]
data['Data'] = [np.array(x).mean()for x in data.Data.values]
Traceback (most recent call last):
File "new.py", line 9, in <module>
data['Data'] = [float(x) for x in data.Data.values]
ValueError: could not convert string to float: [1618.6294555664062, 1619.0826416015625, 1620.0897216796875, 1620.0393676757812, 1620.0393676757812, 1620.240783691406, 1620.391845703125, 1620.0897216796875, 1619.435119628906, 1620.4925537109373, 16
Also tried to use astype(float).mean but doesn't work.
Sample DataFrame:
unixTime sampleAmount Time samplingRate Data
0 1.556891e+09 16384 340 48188.235294 [1618.6294555664062,1619.0826416015625,1620.489622]
1 1.556891e+09 16384 341 48046.920821 [1619.78759765625,1619.0826416015625,1620.49754]