'How to create converters for pandas?
I want to read in a CSV file with pandas. Two columns are to be multiplied by a different constant each.
params = {
"table-columns": ['A', 'B'],
"multiplicands": ['0.001', '0.000001']
}
converters_ = {}
for i in range(0,len(params['table-columns'])):
column = params['table-columns'][i]
multiplicand = params['multiplicands'][i]
display(column + '/' + multiplicand)
func = lambda x: float(x) * float(multiplicand)
converters_[column] = func
display(converters_['A'](1)) # should be 1e-03
display(converters_['B'](1)) # should be 1e-06
#df = pd.read_csv('data.csv', converters=converters_)
This is the output:
'A/0.001'
'B/0.000001'
1e-06
1e-06
Column A should be multiplied by 0.001, but it is multiplied by 0.000001. Where is the bug here?
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
