Error in do_one(nmeth) : NA/NaN/Inf in foreign function call (arg 1)

I have a data table (“norm”) containing numeric – at least to what I can see – normalized values of the following form:

A screenshot of the table

When I am executing

k <- kmeans(norm,center=3)

I am receving the following error:

Error in do_one(nmeth) : NA/NaN/Inf in foreign function call (arg 1)

Can you help me? Thank you!

4 Answers

kmeans cannot handle data that has NA values.

The mean and variance are then no longer well defined, and you don’t know anymore which center is closest.

Error in do_one(nmeth) : NA/NaN/Inf in foreign function call (arg 1)

This error occurs also due to non numeric values present in the table.

all of you all who are having ” Error in do_one(nmeth) : NA/NaN/Inf in foreign function call (arg 1)” problem instead of

results <- kmeans(iris.features,3)
results

write the following and please be careful of the case in iris write whatever you have used in the beginning

results <- kmeans(na.omit(irisa.features),3) # this helps in omitting NA 
results

For error stating:

Error in do_one(nmeth) : NA/NaN/Inf in foreign function call (arg 1)

the dataset you have posted above contains scaled entries, the reason must be that you have NA values in your dataset, hence omit them by the following code.

km_cluster <- kmeans(na.omit(MyData), 3)
km_cluster
km_cluster$withinss
km_cluster$tot.withinss/km_cluster$betweenss

Leave a Reply

Your email address will not be published. Required fields are marked *