...tbds:  
          - check and fix PR #16 by ztime: Fix for different levels in training data and x.
          - maybe add variable importance (LO/perm) to post-validate selection od lambda 

          - add test for allNAs and kproto_gower
          - check NA treatment (argument + remove of NAs, ln 133ff + are they ignored if na.rm=F?)
          - check -itemize environment in validation_kproto.Rd (v0.3-14)
        
          - clprofiles(): 
            1) add legends for factors
            2) check additional input parameter for a) w/o ask = T  b) specify mfrow/mfcol for simultaneous plots of several variables 
               (+ add error check for this option if # of variables does not match grid)
            ...is there any potential impact on plot.kproto?

clustMixType_0.5-1  2026-05-29  - kproto2silhouette.R added (request from Sam Sievertsen), DESCRIPTION modified w.r.t. new Authors@R field
clustMixType_0.4-2  2024-06-05  - for type=gower: enable na.rm=imp.onestep and fix na.rm=no
clustMixType_0.4-1  2024-06-05  - enable clustervalidation for type=gower
clustMixType_0.3-17 2024-06-05  - fixed minor issues: print.kproto (num of categoricals); kproto (consistent description of the type argument)
clustMixType_0.3-16 2023-12-17  - kprototypes: new default type = "Huang" added (ln.177) to make sure. (internally relabelled as type = "standard". old call type = "standard" is still possible.)
clustMixType_0.3-15 2023-12-13  - kprototypes: ln. 272-281 removed (missings removed twice for na.rm = "yes", the 2nd time is redundant)
                                (- kprtotypes_gower: ln. commented 135-163 removed to be the code more readable.)
clustMixType_0.3-14 2023-12-10  - winbuilder note: validation_kproto.Rd: \itemize environment changed: unlike argument lists, \item in these formats is followed by a space and the text (not enclosed in braces) 
clustMixType_0.3-13 2023-12-09  - Date field changed to ISO 8601 yyyy-mm-dd format according to Rwinbuilder check note.
                                - kproto_gower.Rd, \item{lambda}  ...\code{code}{type = "gower"}... corrected.
clustMixType_0.3-12 2023-10-25  - implemented three initialization strategies, for which 3 help functions were added
                                - clean up lambdaest
                                - include lambdaest into kproto
                                - fixed some minor typos
                                - fixed: no output if keep.data = FALSE and nstart>1
clustMixType_0.3-11 2023-09-05  - .rd file for stability_kproto
                                - bugfix stability_kproto: undefined input parameter
clustMixType_0.3-10 2023-09-01  - cluster stability determination added, along with updated tests
                                - typos fixed in clustervalidation.R
clustMixType_0.3-9  2022-12-13  - number of test cases for validation_kproto reduced to decrease time for check on CRAN 
                                - fixes in kproto_gower (ln 236ff & 336ff): merging of equal prototypes (one of the for R < 4.1.0 and in ln. 328 the ordinal variables were not considered)
                                - fix for ordinal variables if k is data frame in kproto_gower (ln. 204ff)
                                - logo replaced
clustMixType_0.3-8  2022-12-10  - examples from validation_kproto changed to \dontrun{} as they are too slow for CRAN submission 
clustMixType_0.3-7  2022-12-09  - fixes according to win-builder: importFrom("stats", "median"), .Rd for na.rm and plot.kproto 
                                - NA treatment for kproto_gower (ln. 424): cluster membership NA if all varianbles are NA. Note kproto_gower does not allow for na.rm = "yes" data with removed missings are passed from kproto(). 
                                - validation_kproto (ln. 983)/kproto (ln.920): class(object) != "kproto") replaced by: !inherits(object, "kproto") 
clustMixType_0.3-6  2022-12-07  - internal imputation and one step imputation of doi = 10.1007/s00357-022-09422-y implemented
                                - changing the argument na.rm from logical to character
                                - backwards compatibility is given, since TRUE is changed to "yes" and FALSE to "no" automatically
                                - added some new tests in test_basic regarding the imputation
clustMixType_0.3-5  2022-12-06  - fixes in test_basics (prediction for only 1 obs) and validation_kproto (stop for gower). 
clustMixType_0.3-4  2022-12-04  - plot.kproto added (wrapper aorund clprofiles). 
clustMixType_0.3-3  2022-12-04  - predict.kproto extended to data frame with only one obs. (ln.495, suggestd by G.Terziysky).
                                - additional $stdization element returned by kproto_gower() for further use in predict function.
                                - predict.kproto() for type = "gower" changed (now uses standardization from training data.
clustMixType_0.3-2  2022-11-19  - example added to .Rd     
				- commented chunks removed
                                - some tests for gower extension added
                                - error check in validation_kproto() ln. 972f as long as if it is not implemented for type == "gower"
clustMixType_0.3-1  2022-11-13  - kproto_gower.R added (internally called by kproto)    (...not built --> v0.3-2)
                                - impacts on kproto (new type argument), print.kproto and predict.kproto 


clustMixType_0.2-15 2021-08-16  - validation_kproto: bug fix for special case of variable selection by lambda for no mixed-type data
                                - few minor bug fixes for special cases with missing values
clustMixType_0.2-14 2021-07-14  - bug fix of bug fix (ln.202): check for lambda == 0 only if length(lambda) == 1 (otherwise error for is.null(lambda))  
clustMixType_0.2-13 2021-07-09  - bug fix for special case of variable selection by lambda for no mixed-type data; validation_kproto will follows shortly
clustMixType_0.2-12 2021-03-10  - after call with uwe also in validation_kproto.Rd \href changed in to \doi (...such that it will be changed with next CRAN submission).
clustMixType_0.2-11 2021-03-09  - \href to \doi changed according to rwinbuilder check note for R devel.
clustMixType_0.2-10 2021-03-01  - bug fix: save kproto object if there is a clusterpartition with same number of cluster but different validation index; comparison of several indices of same size clusters possible
clustMixType_0.2-9  2020-11-04  - update error-messages, if index calculation with k = 1 cluster or an kproto-object with only one cluster.
clustMixType_0.2-8  2020-11-02  - personalized lambda input with validation_kproto added
clustMixType_0.2-7  2020-06-11  - tibble import added to namespace (ln.107 kprototypes.R) and description 
clustMixType_0.2-6  2020-05-29  (not built --> v0.2-7)
				- enable input of tibbles
                                - fix par(ask="FALSE") into par(ask=FALSE)
                                - check done: no impact of NAs in predict or clprofiles
clustMixType_0.2-5  2020-04-22  - fix output for validation indices: k_opt (integer) and index_opt (numeric) instead of named numeric k_opt 
clustMixType_0.2-4  2020-04-16  - bug fix ln. 165f 
				- assign cluster NA to obs. with NAs in all variables
			        - l. 287 & 330 only update prototypes for variables where not all values are NA
clustMixType_0.2-3  2020-03-23  - implemented wrapper validation-index-functions 
				- in validation_kproto: added argument kp_obj=c("optimal","all") if output should contain only optimal kproto-object or all calculated kproto-objects
				- in validation_kproto: explanation added in help for situation object!=NULL & data!=NULL 
				- this NEWS file added
clustMixType_0.2-2  2020-03-03  - initial prototypes without NAs
				- bug fix: sample in case of multiple minima (which(x==min()) instead of which.min(x))
				- bug fix: pass na.rm for nstart > 1
				- Example of ValIndices: added kproto(?, keep.data=TRUE) and fix k_{max} instead of k_max
				- hexbin added via usethis::use_logo("C:/R/contribs/clustMixType.png")
clustMixType_0.2-1  2019-02-25  - validation indices added (cindex, dunn, gamma, gplus, mcclain, ptbiserial, silhouette, tau)
				- Bugfix (case k=1: line 229, following the check for equal cluster; line 285: following the check for empty cluster)
				- changing the meaning of verbose and adding some information-outputs
				- Simplification of the code-structure (line 211ff early check for equal clusters; line 314ff final update of prototypes and dists)
				- Bugfix (occurrence of equal prototypes in last iteration: line 288)
				- remove non-sense rownames of protos: line 345
                                - citation file added
								
clustMixType_0.1-36 2018-09-01  - testthat error for R3.5.1 and vector valued lambda: as.matrix() added (ln.207/211/250/256/409/415) 
clustMixType_0.1-35 2018-08-31  - Several cat() statements changed into messages (ln. 127, 229)
				- verbose argument added (prevents counting of NAs)
				- stop for data frame with numerics/factors only + reference to kmeans()/kmodes() (ln.114f.)
				- warning added for obs. with all variables NA if na.rm = FALSE (ln. 132ff)
				- Update .Rd some typos / reformulations.
clustMixType_0.1-34 2018-06-22  - Bugfix (non-scalar k) for NAs / additional checks on k / (row.)names for result added
				- Error check nrow(x) < k moved from ln.127 to ln. 152/158/169 (k be integer, vector or data frame)
                                - Warning added in ln.151 for case k no integer.  
				- ln.156: Error check: k < 1
				- ln.307: names(clusters) <- row.names(dists) <- row.names(x) in case of na.rm=T
                                - roxygen code changed from Rd summary.kproto into summary (R CMD check NOTE)
clustMixType_0.1-33 2018-06-17  - Bugfixes for NA extension:
				- ln.117-120: block with check for NAs moved before NA exclusions	
                                - ln.271: missing na.rm=TRUE added   
clustMixType_0.1-32 2018-06-08  - handling of NAs (based on version clustMixType_0.1-30):
				- argument na.rm added	
				- ln.111ff: rows with NAs deleted + message and error check
				- vnum/vcat: (ln.128) & lamndaest (ln.564ff)  na.rm=T, (ln.128) length(z) by sum(!is.na(z))
				- protos for k==1: (ln.175) na.rm=T
				- d1: (ln.180 k==1, 224 k>1, 388 predict) rowSums(d1, na.rm=T)
				- d2: (ln.184, 229, 309) d2[is.na(d2)] <- FALSE # instead of rowSums(d2, na.rm=T)

*** [clustMixType_0.1-31        ...version skipped (tests on potential Rcpp integration ...postponed)] ***

clustMixType_0.1-30  2017-11-02  kproto(): bugfixes ln.122: anyfact instead of anycat
				 ln.110 k_input <- k and call for nstart > 1 with k = i_input at ln.292 in case of merged clusters.  
clustMixType_0.1-29  2017-10-15  clprofiles(): par(ask=FALSE) added in ln.473
				 clprofiles(): colours for k<3 fixed
clustMixType_0.1-28  2017-09-04  summary.kproto(): correct cluster IDs in summary tables for numeric variables.
clustMixType_0.1-27  2017-08-30  bugfix kproto after merge of empty clusters (ln.245-251, mail R.Aschenbruck -- error occurred in subsequent check for equal prototypes)
clustMixType_0.1-26  2017-08-30  clprofiles(): col argument added (-> fix colors in bars and boxes), 
				 lambdaest(): num.method and fac.method added (-> sd instead of var according tu huang's 97 paper), thx for feedback added as a comment in *.R
clustMixType_0.1-25  2017-08-16  minor changes in examples .Rd files lambdaest() and summary.kproto() (wrong cluster number k)
clustMixType_0.1-24  2017-08-16  summary.kproto() added; keep.data argument added to kproto()
clustMixType_0.1-23  2017-08-15  lambdaest extension: outtype argument; check: at least one lambda > 0 (ln.92)
clustMixType_0.1-22  2017-07-27  Note R CMD check --as-cran fixed: hidden *.Rhistory file removed from folder
clustMixType_0.1-21  2017-07-27  method = 2 added to lambdaest(); bugfix: error check on length(lambda) moved from ln. 91 ~> ln.101 
clustMixType_0.1-20  2017-07-17  allow vor variable specific vector valued lambdas (...if(length(lambda) > 1) d2 <- d2 %*% lambda[catvars])
clustMixType_0.1-19  2017-07-17  extension for k=1: special case, ln.147 ; initialization of clusters/... moved before check for equal prototypes (ln.141) 
clustMixType_0.1-18  2017-07-17  k of type data frame added; rm(ids) moved upwards in !is.data.frame(k){}
clustMixType_0.1-17  2016-11-10  Bugfix for single categorical/numeric variables (several dimension drop = FALSE added).
clustMixType_0.1-16  2016-02-27  DOI added for CRAN submission.
clustMixType_0.1-15              
clustMixType_0.1-14  2016-02-26  Rename of package.

######### Changelog of former package up to rename into clustMixedType.
kprototypes_0.1-13  2016-02-26  Several importForm ob base packages added accordimg to chges in CRAN policy. 
kprototypes_0.1-12  2016-02-25  Reference changed. 
				roxygen code for export changed (* checking S3 generic/method consistency ... NOTE Found the following apparent S3 methods exported but not registered: kproto.default)
kprototypes_0.1-11  2015-01-26  Speedup of kproto() also added to predict.kproto().
kprototypes_0.1-10  2015-01-26  Slight adaption of clprofiles() (clusids <- ) to kmeans like objects. Examples replaced by more explicative artificial ones.
kprototypes_0.1-9   2014-11-30	Bugfix: currentyl 2 versins of print.kproto() ~> one removed & no assignment of class kproto.    
kprototypes_0.1-8   2014-11-27	Description file changed several times according to B.Ripley's reco.   
...
kprototypes_0.1-5   2014-11-24	print.kproto() function added for conveniance.   
kprototypes_0.1-4   2014-11-23	lambdaest() for constant only; stop() for 1D data frames added.   
kprototypes_0.1-3   2014-11-22	speed up kprotos() (by ca. factor 100) in dist calculation (~ln. 130-140)  
kprototypes_0.1-2   2014-09-23	rename profile() into clprofiles()  
kprototypes_0.1-1   2014-09-23	first built     
