[R] Help with K-Means output
Bert Gunter
bgunter@4567 @ending from gm@il@com
Sat Dec 8 18:18:42 CET 2018
See David Carlson's reply -- and his advice for learning about how to use
lists.
"And I can just join this DF with my original DF used for the KMean,
correct?"
Define "join" . See, e.g.
http://desktop.arcgis.com/en/arcmap/10.3/manage-data/tables/essentials-of-joining-tables.htm
See also ?merge
I consider it to be your job to learn how to work with R's data structures.
There are numerous web tutorials to help you do so. Others may disagree and
reply to such queries.
Cheers,
Bert
Bert Gunter
"The trouble with having an open mind is that people keep coming along and
sticking things into it."
-- Opus (aka Berkeley Breathed in his "Bloom County" comic strip )
On Sat, Dec 8, 2018 at 8:43 AM Bill Poling <Bill.Poling using zelis.com> wrote:
> Thank you Bert, I see, so I think this is the process?
>
> set.seed(213)
> rr0a1 <- kmeans(rr0, 10)
>
> summary(rr0a1) #Just the cluster
> #Length Class Mode
> #cluster 14355 -none- numeric
>
> head(rr0a1$cluster, n=35)
> # [1] 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
>
> Xcluster <- as.data.frame(rr0a1$cluster)
>
> head(Xcluster, n=5)
> #rr0a1$cluster
> # 1 7
> # 2 7
> # 3 7
> # 4 7
> # 5 7
>
> tail(Xcluster, n=5)
> #rr0a1$cluster
> # 14351 6
> # 14352 6
> # 14353 6
> # 14354 6
> # 14355 6
>
> And I can just join this DF with my original DF used for the KMean,
> correct?
> The vertical order is the same?
>
> WHP
>
>
> From: Bert Gunter <bgunter.4567 using gmail.com>
> Sent: Saturday, December 8, 2018 10:46 AM
> To: Bill Poling <Bill.Poling using zelis.com>
> Cc: R-help <r-help using r-project.org>
> Subject: Re: [R] Help with K-Means output
>
> Please see ?kmeans and note the "cluster" component of the returned value
> that would appear to provide the info you seek.
>
> -- Bert
>
>
> Bert Gunter
>
> "The trouble with having an open mind is that people keep coming along and
> sticking things into it."
> -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip )
>
>
> On Sat, Dec 8, 2018 at 7:03 AM Bill Poling <mailto:Bill.Poling using zelis.com>
> wrote:
> Good afternoon. I hope I have provided enough info to get my question
> answered.
>
> I am running windows 10 -- R3.5.1 -- RStudio Version 1.1.456
>
> When running a K-Means clustering routine is it possible to get the actual
> data from each cluster into a DF?
>
> I have reviewed a number of tutorials and unless I missed it somewhere I
> would like to know if it is possible.
>
> https://www.datacamp.com/community/tutorials/k-means-clustering-r
> https://....guru99..../r-k-means-clustering.html
> https://datascienceplus.com/k-means-clustering-in-r/
> https://datascienceplus.com/finding-optimal-number-of-clusters/
> http://enhancedatascience.com/2017/10/24/machine-learning-explained-kmeans/
> http://enhancedatascience.com/2017/04/30/r-basics-k-means-r/
>
> For example:
>
> I ran the below and get K-means clustering with 10 clusters of sizes 1511,
> 1610, 702, 926, 996, 1076, 580, 2429, 728, 3797
> Can the 1511 values of SavingsReversed and ProviderID , 1610 values of
> SavingsReversed and ProviderID, etc.. be run out into DF's?
>
> Thank you for your help.
>
> WHP
>
> str(rr0)
> Classes 'data.table' and 'data.frame':14355 obs. of 2 variables:
> $ SavingsReversed: num 0 0 61 128 160 ...
> $ ProviderID : num 113676 113676 116494 116641 116641 ...
> - attr(*, ".internal.selfref")=<externalptr>
>
> head(rr0, n=35)
> SavingsReversed ProviderID
> 1: 0.00 113676
> 2: 0.00 113676
> 3: 61.00 116494
> 4: 128.25 116641
> 5: 159.60 116641
> 6: 372.66 119316
> 7: 18.79 121319
> 8: 15.64 121319
> 9: 0.00 121319
> 10: 18.79 121319
> 11: 23.00 121319
> 12: 18.79 121319
> 13: 0.00 121319
> 14: 25.86 121319
> 15: 14.00 121319
> 16: 113.00 121545
> 17: 50.00 121545
> 18: 1155.32 121545
> 19: 113.00 121545
> 20: 197.20 121545
> 21: 0.00 121780
> 22: 36.00 122536
> 23: 1171.32 125198
> 24: 1171.32 125198
> 25: 43.00 125303
> 26: 0.00 125881
> 27: 69.64 128435
> 28: 420.18 128435
> 29: 175.18 128435
> 30: 71.54 128435
> 31: 99.85 128435
> 32: 0.00 128435
> 33: 42.75 128435
> 34: 175.18 128435
> 35: 846.45 128435
>
> set.seed(213)
> rr0a <- kmeans(rr0, 10)
> View(rr0a)
> summary(rr0a)
> # Length Class Mode
> # cluster 14355 -none- numeric
> # centers 20 -none- numeric
> # totss 1 -none- numeric
> # withinss 10 -none- numeric
> # tot.withinss 1 -none- numeric
> # betweenss 1 -none- numeric
> # size 10 -none- numeric
> # iter 1 -none- numeric
> # ifault 1 -none- numeric
>
> x1 <- as.data.frame(rr0a$centers)
> sort(x1)
> #SavingsReversed ProviderID
> # 2 75.19665 2773789.2
> # 3 99.31959 4147091.6
> # 5 101.21070 3558532.7
> # 4 103.41147 3893274.4
> # 1 105.38310 2241031.2
> # 8 114.61562 3240701.5
> # 10 121.14184 4718727.6
> # 9 153.70536 4470878.9
> # 6 156.84426 5560636.6
> # 7 185.09745 173732.9
> print(rr0a)
> # K-means clustering with 10 clusters of sizes 1511, 1610, 702, 926, 996,
> 1076, 580, 2429, 728, 3797
> #
> # Cluster means:
> # SavingsReversed ProviderID
> # 1 105.38310 2241031.2
> # 2 75.19665 2773789.2
> # 3 99.31959 4147091.6
> # 4 103.41147 3893274.4
> # 5 101.21070 3558532.7
> # 6 156.84426 5560636.6
> # 7 185.09745 173732.9
> # 8 114.61562 3240701.5
> # 9 153.70536 4470878.9
> # 10 121.14184 4718727.6
> #Within cluster sum of squares by cluster:
> # [1] 74529288379846 25846368411171 4692898666512 6277704963344
> 8428785199973 90824041558798 1468798013919 12143462193009 5483877005233
> # [10] 51547955737867
> # (between_SS / total_SS = 98.7 %)
> #
> # Available components:
> #
> # [1] "cluster" "centers" "totss" "withinss"
> "tot.withinss" "betweenss" "size" "iter" "ifault"
>
>
>
>
>
>
>
>
>
> Confidentiality Notice This message is sent from Zelis. ...{{dropped:13}}
>
> ______________________________________________
> mailto:R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
> Confidentiality Notice This message is sent from Zelis. This transmission
> may contain information which is privileged and confidential and is
> intended for the personal and confidential use of the named recipient only.
> Such information may be protected by applicable State and Federal laws from
> this disclosure or unauthorized use. If the reader of this message is not
> the intended recipient, or the employee or agent responsible for delivering
> the message to the intended recipient, you are hereby notified that any
> disclosure, review, discussion, copying, or taking any action in reliance
> on the contents of this transmission is strictly prohibited. If you have
> received this transmission in error, please contact the sender immediately.
> Zelis, 2018.
>
[[alternative HTML version deleted]]
More information about the R-help
mailing list