0

I have a dataframe of integers. Preview (starts from 3 due to first 3 rows removal):

enter image description here

The original data in the 'pixel1' column is int, but the NAN there forced it to float.

I tried to fix it with:

X_train.fillna(method='ffill', inplace=True)
X_train = X_train.astype(int)
print(X_train.head())

that results in:

enter image description here

  • can I get the datatype of the value the fillna is using?
  • is there a better way to do so? (better = to skip the astype step, as the data is int originally - I planted the NAN in the file and that caused the int to float unwanted data conversion...)
CIsForCookies
  • 12,097
  • 11
  • 59
  • 124

1 Answers1

2

I suggest use ffill with bfill for back filling if possible some NaNs in first row:

X_train = X_train.ffill().bfill().astype(int)

If not:

X_train = X_train.ffill().astype(int)
jezrael
  • 822,522
  • 95
  • 1,334
  • 1,252