data = pd.read_csv (csv_file, delimiter = ';', decimal = ',', index_col = 0, parse_dates = ['#timestamp'], date_parser = dateparse)
decimal = ','-> Это не повлияло на некоторые столбцы. Я имею в виду, у них все еще есть "," вместо "."
Из-за этой проблемы я не могу разделить, вычесть и т. Д.
TypeError: unsupported operand type(s) for /: 'str' and 'int'
Я применил"заменить" функцию для этих столбцов, но она не сработала. Я понял, что мои столбцы имеют разные типы, некоторые из них строковые, некоторые из них плавающие, и я попробовал это:
measurements = measurements.astype(float)
Но я получил эту ошибку:
ValueError: could not convert string to float: '0,00'
Вот мой код:
measurements = pd.DataFrame()
for csv_file in csv_paths:
dateparse = lambda x: pd.datetime.strptime(x, '%d.%m.%Y %H:%M:%S')
data = pd.read_csv(csv_file, delimiter = ';', decimal = ',', index_col = 0, parse_dates = ['#timestamp'], date_parser=dateparse)
measurements = measurements.append(data, sort = False)
measurements = measurements.reset_index().drop_duplicates(subset='#timestamp', keep='last').set_index('#timestamp')
Часть вывода этого кода:
Date A B C
2019-11-01 02:00:00 61891.53 349423.1 112412,3
2019-11-01 02:00:00 142134.3 235290.5 27428,67
2019-11-01 02:00:00 32423.12 73653.32 98732,83
2019-11-01 02:00:00 54832.57 82057.67 238758,6
2019-11-01 02:00:00 141023.1 104109.1 332856,7
Как мне решить эту проблему?