Unusual linear regression results in R I am doing multiple linear regression analysis in R and I got the following summary:
Call:
lm(formula = Y ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + 
    X10 + X11 + X12 + X13)

Residuals:
ALL 20 residuals are 0: no residual degrees of freedom!

Coefficients: (151 not defined because of singularities)
                   Estimate Std. Error t value Pr(>|t|)
(Intercept)       -15462.94         NA      NA       NA
X1                    63.31         NA      NA       NA
X2                  1363.12         NA      NA       NA
X31,266,019,376     5518.54         NA      NA       NA
X31,483,786,035    29894.78         NA      NA       NA
X31,619,000,000    39338.01         NA      NA       NA
X31,687,000,000    65308.07         NA      NA       NA
X31,720,264,324    35548.79         NA      NA       NA
X31,749,000,000    31693.75         NA      NA       NA

.......................................................

X13692,062,808           NA         NA      NA       NA
X13693,179,733           NA         NA      NA       NA
X13724,817,439           NA         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 19 and 0 DF,  p-value: NA

Could anybody explain what does that result mean? And what should I do?
Thank you!
Another question.  What should I do if the following error appears: 
Error in step(model) : 
number of rows in use has changed: remove missing values?

 A: The result means that you do not have enough observations to fit a model with 13 variables and an intercept. If you have 14 or less observations, you fit the model perfectly. In 2D, imagine that you have just 2 observations - then you can easily fit a line through them just by calculating a slope and an intercept. You do not know any other observation to fully determine the line to fit these observations.
In case of 13 variables and an intercept, the interpretation is similar - you can calculate the coefficients instead of estimating them.
A: Variable X3 appears to be a factor. 
It looks like this is because you tried to read in a column of numbers with commas in it, (which was the one you have called X3). Having commas in it meant it was treated as character rather than numeric, and then (automatically) converted to a factor. 
Try this: is.factor(X3). If that's TRUE, that's what your problem is.
Check whether any of your other variables got turned into factors when they should be numeric.
You need to make sure these read in properly. If the numbers are in a spreadsheet, change the format to avoid commas or set up your reading of the data to deal with numbers formatted with commas.
