How to remove the .0 when reading CSV with Pandas

2019-08-30 02:48发布

问题:

I have a CSV file im reading into pandas dataframe. All the numbers do not have any decimal places, but as soon as I read it into the dframe it adds a trailing zero to the number with a decimal.

1205 becomes 1205.0

How do I get rid of the 0 during pd.read_csv?

I know i can drop the .0 after it has been read into the dataframe, but i really need it not to happen at all.

I have tried float_precision='round_trip'

I have tried to force the dtype during read_csv

Some of the code i tried:

df = pd.read_csv('xxx.csv', header=None, dtype={'T': object,'Date': object,'VAL1': float, 'VAL2': float, 'VAL3': float, 'VAL4': float, 'VAL5': float})

OR

df = pd.read_csv('xxx.csv', header=None, float_precision='round_trip')

回答1:

You said you've tried to force dtype during read_csv, but I don't see why the following wouldn't solve your problem:

pd.read_csv('xxx.csv', dtype=str)