У меня есть DataTable вроде:
| Сценарий игры |
|---|
| -1,95 |
| +1,3 |
| -1,2 |
| +1,54 |
Как мне преобразовать отрицательные числа, которые являются строками, в целые числа?
Это я бы пробовал до сих пор
full_data['Game Script'] = full_data['Game Script'].apply(lambda X: X.replace('+',''))
full_data['Game Script'] = full_data['Game Script'].apply(lambda X: int(X))
У меня следующее исключение:
ValueError: invalid literal for int() with base 10: '-1.85'
ValueError: invalid literal for int() with base 10: '-1.85' Каким должен быть результат при выполнении этого преобразования?






Сделай это.
full_data['Game Script'] = full_data['Game Script'].astype('int64')
Вы также можете использовать функцию eval() здесь:
full_data['Game Script'] = eval(full_data['Game Script'])
Давайте попробуем pd.to_numeric
full_data['Game Script'] = pd.to_numeric(full_data['Game Script'])
Out[21]:
0 -1.95
1 1.30
2 -1.20
3 1.54
Name: GameScript, dtype: float64
astype