I have a data frame with alpha-numeric keys which I want to save as a csv and read back later. For various reasons I need to explicitly read this key column as a string format, I have keys which are strictly numeric or even worse, things like: 1234E5 which Pandas interprets as a float. This obviously makes the key completely useless.
The problem is when I specify a string dtype for the data frame or any column of it I just get garbage back. I have some example code here:
df = pd.DataFrame(np.random.rand(2,2),
index=['1A', '1B'],
columns=['A', 'B'])
df.to_csv(savefile)
The data frame looks like:
A B
1A 0.209059 0.275554
1B 0.742666 0.721165
Then I read it like so:
df_read = pd.read_csv(savefile, dtype=str, index_col=0)
and the result is:
A B
B ( <
Is this a problem with my computer, or something I'm doing wrong here, or just a bug?