J'ai un fichier csv comme suit:
0 5
1 10
2 15
3 20
4 25
Je veux l'enregistrer en tant que dataframe avec les axes x, y comme noms, puis le tracer. Cependant, lorsque j'assigne x
, y
, je reçois un DataFrame foiré, que se passe-t-il?
column_names = ['x','y']
x = pd.read_csv('csv-file.csv', header = None, names = column_names)
print(x)
x y
0 0 5 NaN
1 1 10 NaN
2 2 15 NaN
3 3 20 NaN
4 4 25 NaN
J'ai essayé sans spécifier None
pour header
, en vain.
Ajouter un paramètre sep="\s+"
ou delim_whitespace=True
à read_csv
:
import pandas as pd
temp=u"""0 5
1 10
2 15
3 20
4 25"""
#after testing replace io.StringIO(temp) to filename
column_names = ['x','y']
df = pd.read_csv(pd.compat.StringIO(temp), sep="\s+", header = None, names = column_names)
print (df)
x y
0 0 5
1 1 10
2 2 15
3 3 20
4 4 25
Ou:
column_names = ['x','y']
df = pd.read_csv(pd.compat.StringIO(temp),
delim_whitespace=True,
header = None,
names = column_names)
print (df)
x y
0 0 5
1 1 10
2 2 15
3 3 20
4 4 25
Vous pouvez essayer ceci:
import pandas as pd
column_names = ['x','y']
df = pd.read_csv('csv-file.csv',header=None)
df.columns = column_names