2017-02-04 1 views
0

j'ai csv,
données:Comment normaliser les données pour tous les paramètres à même gamme d'échelle

Rendement: 1172,4, 1712,7, 863,88, 2731,34, 5220

pluie (mm): 113,6, 152,3, 181,9, 152,3, 125,3

fictive (types_of_soil): 1, 0, 0, 2, 1

variable fictive: 1 ==> moyen sol noir

0 ==> noir profond

2 ==> Radis brun

variable dépendante (y): rendement

Variable indépendante: pluie, factice (types de sols)

Ainsi, Je veux normaliser ces données, Comment mettre à l'échelle les données dans la gamme de 1 à 10? J'ai essayé d'utiliser la formule: (xi - min)/(max - min) Est-ce correct?

et comment mettre à l'échelle des données pour une variable binaire (fictif)?

Répondre

1

vous pouvez utiliser ce code pour normaliser les données

import pandas 
import scipy 
import numpy 
from sklearn.preprocessing import MinMaxScaler 
url = "filename.csv" 
names = ['yield','Rain','types of soil'] 
dataframe = pandas.read_csv(url, names=names) 
array = dataframe.values 
# separate array into input and output components 
X = array[:,] **select x independent variable** 
Y = array[:,] **select y dependent variable** 
scaler = MinMaxScaler(feature_range=(0, 1)) 
rescaledX = scaler.fit_transform(X) 
# summarize transformed data 
numpy.set_printoptions(precision=3) 
print(rescaledX[0:5,:]) 

pour plus de détails. voir ce lien http://machinelearningmastery.com/prepare-data-machine-learning-python-scikit-learn/