Giter Site home page Giter Site logo

ade4's Introduction

CRAN_Release_Badge CRAN Downloads R-CMD-check License: GPL v3

Analysis of Ecological Data: Exploratory and Euclidean Methods in Environmental Sciences


Please note! Since January 2024, this repository has belonged to the adeverse organization. To avoid confusion, we strongly recommend updating any existing local clones to point to the new repository URL. You can do this by using git remote on the command line:

git remote set-url origin [email protected]:adeverse/ade4.git

or

git remote set-url origin https://github.com/adeverse/ade4.git


Installing the development version of ade4

  • Install the release version of remotes from CRAN with install.packages("remotes").

  • Make sure you have a working development environment.

    • Windows: Install Rtools.
    • Mac: Install Xcode from the Mac App Store.
    • Linux: Install a compiler and various development libraries (details vary across different flavors of Linux).

Then:

remotes::install_github("adeverse/ade4")

If you do not wish to install the development environments Rtools (Windows) / XCode (Mac), we can supply binary packages of the development version of ade4 on request.

You can also find these binary packages as artifacts of GitHub Actions: here for Windows and here and here for macOS.

Installing the stable version of ade4

install.packages("ade4")

Loading ade4

library("ade4")

ade4's People

Contributors

abdufour avatar aursiber avatar olivroy avatar rekyt avatar sdray avatar thibautjombart avatar thioulouse avatar zkamvar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ade4's Issues

Implements new cases in randtest.coinertia

The randtest.coinertia is not able to deal with all cases as all particular cases are not implemented in the C function. One simple solution would be to use pure R for these cases.

Error in if (n0 == 6) return(cha) : missing value where TRUE/FALSE needed

Hi, I am having a problem when trying to convert genotype data into a genet object in order to then compute the genetic distances. Namely, I am running:

library("ade4")
library("readr")

file = read_delim("file.txt", " ", escape_double = FALSE, col_names = FALSE, trim_ws = TRUE)
rownames(file) = file$X1
file$X1 = NULL
file = as.data.frame(file)

data.genet <- char2genet(file, as.factor(rep(c("Ady", "Alg", "Bas", "Bed", "CEU", "Dru", "Egy", "ESN", "FIN", "Fre", "GBR", "GWD", "IBS", "Ita", "Lib", "LWK", "MoN", "MoS", "Moz", "MSL", "Orc", "Pal", "Rus", "Sah", "Sar", "Spa", "TSI", "TUN", "Tus", "YRI"), c(7,9,16,26,49,12,19,53,38,12,46,55,54,7,16,44,18,8,19,42,7,16,16,18,16,20,53,18,5,52))))

ldist <- dist.genet(data.genet, 3))

But in the char2genet part, it prints:

Error in if (n0 == 6) return(cha) : missing value where TRUE/FALSE needed

I do not know which is the problem, the format of 'file.txt' is apparently the same as 'casitas':
file.txt

Values of the low dimensional space on the mcoa output

Many thanks for providing this package. It has been very useful for some of the analysis together with other packages on Bioconductor.
However I have a question, I would like to calculate the inner average variance explained (AVE) of mcoa.

The inner AVE is defined as:

ave_inner <- function(C, Y) {
  suppressWarnings({sum(C * cor(Y)^2/2, na.rm = TRUE)/(sum(C)/2)})
}

where C is a matrix modelling the relationships between each ktab and Y are the components of the common low dimension space for the samples.
If I understood correctly the published manuscript, C would be a matrix such as: C <- matrix(c(0, 1, 1, 0), nrow = 2). However, I am not sure I understood the details on the manual page for the output of mcoa. I'm not sure what are the values for the samples on the ktab on the common space. Is this the SynVar data.frame of the output of mcoa?

dist.ktab() returns different result than one would expect for fuzzy coded traits

Hi,
I'm not sure if this is the right place to post this but I noticed when calculating distances between fuzzy coded traits with dist.ktab that the result one obtains is different than what one would expect (based on the formulas given in the documentation and the definition of the functions).
According to the dist.ktab() function definition, the Overlap index Manly is used by default for fuzzy coded variables (line 74, methodF <- 2). To calculate distances in dist.ktab() the function dist.prop() is used. According to the dist.prop() function definition method = 2 applies fun2, which is defined as:

1 - sum(p * q) / sqrt(sum(p * p)) / sqrt(sum(q * q))

Using a small made up example:

# example data with two fuzzy coded traits (T and Y)  
trait_matrix <-
  data.frame(
    "T_1" = c(0.5, 0.2),
    "T_2" = c(0.5, 0.6),
    "T_3" = c(0, 0.2),
    "Y_1" = c(0.1, 1),
    "Y_2" = c(0.9, 0),
    row.names = c("A", "B")
  )
# Overlap index manly
fun_overlap_ind <-
  function(p, q) {
    1 - sum(p * q) / sqrt(sum(p * p)) / sqrt(sum(q * q))
  }

# Calculating "manually" distance between Taxa "A" and "B" based on trait T
val_1 <- fun_overlap_ind(p = trait_matrix[1, 1:3],
                                         q = trait_matrix[2, 1:3])
# Calculating "manually" distance between Taxa "A" and "B" based on trait Y
val_2 <- fun_overlap_ind(p = trait_matrix[1, 4:5],
                                         q = trait_matrix[2, 4:5])

# Total distance between A and B based on both traits: 0.5183828 
mean(c(val_1, val_2))

Now with the ade4 package:

# calculate via ade4 package:
vec <- sub("\\_.*", "\\1", names(trait_matrix))
blocks <- rle(vec)$lengths
dat <- prep.fuzzy(trait_matrix, blocks)
dat <- ktab.list.df(list(dat))

# Total distance between A and B based on both traits: 0.7199881  
dist.ktab(dat, type = "F", scann = FALSE)

I noticed that the result obtained from dist.ktab is actually the square root (sqrt) of the result of the "manual" calculation.

sqrt(mean(c(val_1, val_2)))

This seems not to be a coincidence. One could just calculate the distances for one of the traits T or Y and the result from ade4 would be again the sqrt of the result from the "manual" calculation.
First of all, trying to understand the code behind the function did not reveal that the sqrt was taken at the end, but maybe I missed something. This also seems not to be stated in the documentation. Secondly, why is the square root taken in the end?
This is not a rant or something, I'm thankful for the great package but I think the documentation could be improved here.

Install of ADEGraphics failed - for R installed via Homebrew on macOS

Good evening,

I just tried to change my setup and used Homebrew on MacOS to install all R-related installs.
However, what

install.packages("adegraphics")

Unfortunately that led to the following - a few packages that cannot be installed it seems...

Any thoughts?

ERROR: compilation failed for package ‘RcppArmadillo’
* removing ‘/opt/homebrew/lib/R/4.2/site-library/RcppArmadillo’
ERROR: dependencies ‘deldir’, ‘RcppEigen’ are not available for package ‘interp’
* removing ‘/opt/homebrew/lib/R/4.2/site-library/interp’
ERROR: dependency ‘RcppArmadillo’ is not available for package ‘ade4’
* removing ‘/opt/homebrew/lib/R/4.2/site-library/ade4’
ERROR: dependency ‘interp’ is not available for package ‘latticeExtra’
* removing ‘/opt/homebrew/lib/R/4.2/site-library/latticeExtra’
ERROR: dependencies ‘ade4’, ‘latticeExtra’ are not available for package ‘adegraphics’
* removing ‘/opt/homebrew/lib/R/4.2/site-library/adegraphics’

Thanks a lot!

E.

Imrpove the managing of calls to eval in randtest.rlq

The issue appears when a table is named T (e.g., for traits). In this case, the randtest.rlq methods (but it should be the same for other methods that use 'eval' to retrieve objects) wrongly evaluates the object (as TRUE instead of the data.frame) but the code runs wrongly without returning any error.

E <- data.frame(matrix(rnorm(30), nrow = 15))
T <- data.frame(matrix(rnorm(30), nrow = 10))
L <- data.frame(matrix(rpois(lambda = 15, 150), nrow = 15))
coa <- dudi.coa(L, scannf = FALSE)
pcaT <- dudi.pca(T, row.w = coa$cw, scannf = FALSE)
pcaE <- dudi.pca(E, row.w = coa$lw, scannf = FALSE)
rlq1 <- rlq(pcaE, coa, pcaT, scannf = FALSE)
sum(rlq1$eig)
randtest(rlq1)

Solution would be to correctly manage the original object T or at least returns an error.

Slight error in code of plot.foucart?

Hello,
If I understand it correctly, unexported function plot.foucart() begins with the concatenation in object cootot of the various projections returned by foucart(), the goal being to create an encompassing background for subsequent plots:

cootot <- x$li[, c(xax, yax)]
auxi <- x$li[, c(xax, yax)]
names(auxi) <- names(cootot)
cootot <- rbind.data.frame(cootot, auxi)
auxi <- x$Tli[, c(xax, yax)]
names(auxi) <- names(cootot)
cootot <- rbind.data.frame(cootot, auxi)
auxi <- x$Tco[, c(xax, yax)]
names(auxi) <- names(cootot)
cootot <- rbind.data.frame(cootot, auxi)

In this case, I believe that line 2 of the above code should rather be:
auxi <- x$co[, c(xax, yax)]
If I am wrong, I apologize in advance.
Cheers,
Didier Plat

Warning in install.packages : installation of package ‘ade4’ had non-zero exit status

In trying to download this package the following error occurs. There is no stack overflow for this issue. I tried to download from online repository and downloaded the package to local disk and tried to install it locally, both failed with this issue. Please help resolve!

install.packages("ade4")

There is a binary version available but the source version is later:
binary source needs_compilation
ade4 1.7-20 1.7-22 TRUE

Do you want to install from sources the package which needs compilation? (Yes/no/cancel) yes
installing the source package ‘ade4’

trying URL 'https://cran.rstudio.com/src/contrib/ade4_1.7-22.tar.gz'
Content type 'application/x-gzip' length 3365194 bytes (3.2 MB)

downloaded 3.2 MB

  • installing source package ‘ade4’ ...
    ** package ‘ade4’ successfully unpacked and MD5 sums checked
    ** using staged installation
    ** libs
    xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
    ERROR: compilation failed for package ‘ade4’
  • removing ‘/Library/Frameworks/R.framework/Versions/4.2-arm64/Resources/library/ade4’
    Warning in install.packages :
    installation of package ‘ade4’ had non-zero exit status

Error in `[.data.frame`(dfxy, , yax) : undefined columns selected

Hello,
my code is followed:

obs.pca=dudi.pca(data.frame(dat), scannf=F, nf=10)
dat_cluster = pam(dat_dist[[i]], k = 2)$cluster
obs.bet=bca(obs.pca, fac=as.factor(dat_cluster), scannf=F, nf=k-1)
s.class(obs.bet$ls, fac=as.factor(dat_cluster), grid=F)

I want to use bca and s.class to show cluster 2, why it can't work .
Perhaps I don't know the principle of bca, would you mind explaning simply?

Feature request: display function call for dudi creation after user selects nf

Hello,

I have a proposition to display a helper message after the user selects the number of axes:

> data(deug)
> deug.dudi <- dudi.pca(deug$tab, center = deug$cent, scale = FALSE)
Select the number of axes: 
2

You can reproduce this result with the following command:
deug.dudi <- dudi.pca(deug$tab, center = deug$cent, scale = FALSE, scannf = FALSE, nf = 2L)

> 

I've noticed that many users understand why they are being asked to select a number of axes, but do not know how to tell ade4 to automatically select the desired number of axes. This results in a lot of frustration when the analyses have to be redone.

By displaying this message, I hope to alleviate some of these frustrations.

I'll submit a PR on this soon, hopefully.

-Zhian

dudi.mix fails when ordered variable only has two levels

Hi everyone,

I'm trying to run dudi.mix on a data set that has a mix of categorical (factor and ordered variables) and continuous variables and I've noticed that it can't compute when an ordered variable only has two levels.

I believe the problem is in the internal floc function, where apply(w, 2, sum) fails because there is only one column in this particular case (and thus w is no longer a matrix, but a vector).
I first thought that perhaps we should always have more than two levels (if that is the case, would it possible to add some checks to dudi.mix?). But then I noticed that prior to the dudi object X being created, the function does deal with the case of only having two levels (see if (deg.poly == 1) cha <- names(df))

I'm not sure what the best way of dealing with this is, so I thought it best to post an issue here. Here's a reproducible example:

library(ade4)
data(dunedata)

## remove one level of the ordered factor, so that only two are present
dunedata$envir$use <- as.character(dunedata$envir$use)
dunedata$envir$use[dunedata$envir$use == "grazing"] <- c(rep("both", 3), 
                                                   rep("hayfield", 2))
dunedata$envir$use <- as.ordered(dunedata$envir$use)
dudi.mix(dunedata$envir, scannf = FALSE, nf = ncol(dunedata$envir))

Any help is much appreciated!
Ceres Barros

Execution halted while running loocv with bca on parallel mode

Hi,

First off, thanks a lot for this package.

I ran into some issues while running loocv in parallel mode with a bca result of 17,073 rows. After about 9 hours, I got these error messages:

Error in xcoo1[ind1, nax] : subscript out of bounds
Calls: loocv -> loocv.between
In addition: Warning messages:
1: In mclapply(argsList, FUN, mc.preschedule = preschedule, mc.set.seed = set.seed, :
scheduled cores 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 did not deliver results, all values of the jobs will be affected
2: In x * w :
longer object length is not a multiple of shorter object length
3: In x * w :
longer object length is not a multiple of shorter object length
4: In x * w :
longer object length is not a multiple of shorter object length
Execution halted

Could you help me figure out what's going wrong?

Thanks!

installation on Mac OS from source with error

Hi, I have installed ade4 1.7-5 from source on my Mac (with Sierra). I have installed gcc with brew (which now ships also gfortran). I received the following error:

ld: warning: directory not found for option '-L/usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2'
ld: library not found for -lgfortran
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [ade4.so] Error 1
ERROR: compilation failed for package ‘ade4’

I solved the problem with an hack, that I report here for other users' convenience, creating a symbolic link in the gcc folder installed via brew. In particular, brew creates the directory /usr/local/lib/gcc/6 and I created the folder /usr/local/lib/gcc/x86_64-apple-darwin13.0.0 and inside it the folder 4.8.2 linking /usr/local/lib/gcc/6. Obviously, reinstalling gcc rewrites all the folder /usr/local/lib/gcc/ thus removing the needed folder.

The alternative for me was to install from binaries which ended successfully.

Thank you for your work.

Samantha

newick2phylog hangs and leaks memory on moderatele large trees

Hi,

I have a moderately large phylogenetic tree that was obtained from QIIME and when I try to import it as a 'phylog' object with newick2phylog() function, it is processing for hours and occupies the memory (last attempt ran for 15 hours and consumed 32GB of RAM), without ever finishing.

library(ade4)
library(ape)
# importing the tree as a 'phylo' object
tree.phylo <- read.tree("rep_set.tre") # this works
# read the tree as a character string
tree.nw <- scan("rep_set.tre", what="character")
# import the tree as a 'phylog' object
bact.phy <- newick2phylog(tree.nw) # does not finish and leaks memory

Is this a known behavior or there's something wrong with my file? The file can be downloaded from here.

Thanks!

suprow pour dudi.fca

Bonjour Stéphane,
un de mes collègues a un souci avec la fonction suprow utilisé sur une fca.
il semble avoir un souci avec les pondérations.
aussi j'ai bricolé un petit correctif "sur le tas". je te le soumet donc.

Bonne journée

Martial Ferréol

suprowfca.txt

Benzecri & Greenacre correction on dudi.hillsmith / dudi.mix eigenvalues

Good morning,

Quick one - just wondering if the corrections on eigenvalues that would be applicable for MCA (Benzecri and Greenacre) )are also applicable for when we have a dudi object with mixed data. My guess is "probably yes" but I have some residual doubt.

These corrections are available in the CA package - is there a plan to make it also available in ADE4? Or is it not what is usually used in a typical data analysis workflow in ecology?

Many thanks
Erwan

Problem using newick2phylog

HI:
I have a phylo class object obtained using taxize's class2tree function (the attached file is an gzip-compressed RDS) and i'd like to use ade4::newick2phylog on this object.

I first use Tree <- ape::write.tree(tr$phylo) to write the tree to a file and then try to write a phylogeny using

newick2phylog(Tree), but I get the following error:

Error in dimnames(w1) <- list(leave.names, names(x1)) : length of 'dimnames' [2] not equal to array extent

Any opinions on why this happens and how to fix it?

Thanks in advance:

Pedro

TreePN.gz

Remove extraneous parentheses causing compiler warning

Please address Clang complaint:

gcc -arch x86_64 -std=gnu99 -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG  -I/usr/local/include    -fPIC  -mtune=core2 -g -O2  -c fourthcorner.c -o fourthcorner.o
fourthcorner.c:1662:21: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
      if ((*typeTest==3)){
           ~~~~~~~~~^~~
fourthcorner.c:1662:21: note: remove extraneous parentheses around the comparison to silence this warning
      if ((*typeTest==3)){
          ~         ^  ~
fourthcorner.c:1662:21: note: use '=' to turn this equality comparison into an assignment
      if ((*typeTest==3)){
                    ^~
                    =
1 warning generated.

Dudi object

Hello,

I'm working with geometric morphometrics, and I want to run a RLQ with the scores of the skull that I get with geomorph package. I want to transform my data frame in an object dudi without entering the data again in a dudi.pca. Do you know how can I calculate the row and column weigths to work with as.dudi function.

Thanks,
Adriana

Error with tibble

The analysis runs without error but the scatter plot fails with a message which is difficult to relate to tibble because tibble inherits from data.frame class.

library('ade4')
library('tibble')

data(banque)
dataframe_acm <- dudi.acm(banque, scann = FALSE, nf = 3)
tibble_acm <- dudi.acm(as_tibble(banque), scann = FALSE, nf = 3)

scatter(dataframe_acm)

scatter(tibble_acm)
#> Error in s.class(x$li, oritab[, i], xax = xax, yax = yax, clabel = 1.5, : factor expected for fac

str(as_tibble(banque))
#> Classes 'tbl_df', 'tbl' and 'data.frame':    810 obs. of  21 variables:
#>  $ csp     : Factor w/ 9 levels "agric","artis",..: 6 3 3 8 7 8 8 8 6 1 ...
#>  $ duree   : Factor w/ 5 levels "dm2","d24","d48",..: 3 2 3 2 4 5 3 5 2 3 ...
#>  $ oppo    : Factor w/ 2 levels "non","oui": 1 1 1 1 1 1 1 1 1 1 ...
#>  $ age     : Factor w/ 5 levels "ai25","ai35",..: 5 2 5 3 5 3 5 5 2 4 ...
#>  $ sexe    : Factor w/ 2 levels "hom","fem": 1 1 1 2 1 2 2 2 1 1 ...
#>  $ interdit: Factor w/ 2 levels "non","oui": 1 1 1 2 1 1 1 1 1 1 ...
#>  $ cableue : Factor w/ 2 levels "non","oui": 1 1 1 1 1 1 1 1 1 1 ...
#>  $ assurvi : Factor w/ 2 levels "non","oui": 1 1 1 1 1 1 1 1 1 1 ...
#>  $ soldevu : Factor w/ 6 levels "p4","p3","p2",..: 5 5 4 3 1 4 4 1 4 4 ...
#>  $ eparlog : Factor w/ 3 levels "for","fai","nul": 3 3 3 3 3 3 3 3 3 3 ...
#>  $ eparliv : Factor w/ 3 levels "for","fai","nul": 3 3 3 3 3 3 3 3 3 3 ...
#>  $ credhab : Factor w/ 2 levels "non","oui": 1 1 1 1 1 1 1 1 1 1 ...
#>  $ credcon : Factor w/ 3 levels "nul","fai","for": 1 1 1 1 1 1 1 1 1 1 ...
#>  $ versesp : Factor w/ 2 levels "oui","non": 2 2 2 1 2 2 2 2 2 2 ...
#>  $ retresp : Factor w/ 3 levels "fai","moy","for": 1 1 1 1 1 1 1 1 1 1 ...
#>  $ remiche : Factor w/ 4 levels "for","moy","fai",..: 4 4 4 3 4 4 4 1 4 3 ...
#>  $ preltre : Factor w/ 3 levels "nul","fai","moy": 1 1 1 1 1 1 1 1 1 1 ...
#>  $ prelfin : Factor w/ 3 levels "nul","fai","moy": 1 1 1 1 1 1 1 1 1 1 ...
#>  $ viredeb : Factor w/ 4 levels "nul","fai","moy",..: 1 1 1 1 2 1 1 1 1 1 ...
#>  $ virecre : Factor w/ 4 levels "for","moy","fai",..: 4 4 4 4 4 4 4 3 4 4 ...
#>  $ porttit : Factor w/ 4 levels "nul","fai","moy",..: 1 1 1 3 4 1 1 4 1 1 ...

Created on 2019-04-26 by the reprex package (v0.2.0.9000).

is.numeric() check failing with tibble in fourthcorner function

Hello, a colleague reached out for help with the fourthcorner function. I found that he was passing in a tibble and not a straight data.frame which causes the is.numeric() on line 85 of fourthcorner.R to return FALSE. But the is.data.frame(tabR) check on line 12 passes. E.g.,:

library(ade4)
library(dplyr)

data(aviurba)
# tabR
envVars <- aviurba$mil
#tabL
sppAbundances <- aviurba$fau
#tabQ
sppTraits <- aviurba$traits

foo <- fourthcorner(tabR = envVars,
                    tabL = sppAbundances,
                    tabQ = sppTraits,
                    nrepet=99)

envVars <- as_tibble(aviurba$mil)
bar <- fourthcorner(tabR = envVars,
                    tabL = sppAbundances,
                    tabQ = sppTraits,
                    nrepet=99)

Perhaps an as.data.frame coercion on tibbles would solve this.

Thanks for a great pacakge.

Package compilation issues

I am trying to install ade4_1.7-10.tar.gz and seeing below error,

 R CMD INSTALL ade4_1.7-10.tar.gz
* installing to library ‘/opt/R/3.4.3/lib/R/library’
* installing *source* package ‘ade4’ ...
** package ‘ade4’ successfully unpacked and MD5 sums checked
** libs
gcc -I/opt/R/3.4.3/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -g -O2  -c adesub.c -o adesub.o
In file included from /usr/include/bits/posix1_lim.h:161,
                 from /usr/include/limits.h:183,
                 from /usr/lib/gcc/x86_64-redhat-linux/8/include/limits.h:194,
                 from /usr/lib/gcc/x86_64-redhat-linux/8/include/syslimits.h:7,
                 from /usr/lib/gcc/x86_64-redhat-linux/8/include/limits.h:34,
                 from /opt/R/3.4.3/lib/R/include/R.h:57,
                 from adesub.h:5,
                 from adesub.c:5:
/usr/include/bits/local_lim.h:87:1: error: unknown type name ‘define’
 define TTY_NAME_MAX  256
 ^~~~~~
/usr/include/bits/local_lim.h:87:22: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before numeric constant
 define TTY_NAME_MAX  256
                      ^~~
make: *** [/opt/R/3.4.3/lib/R/etc/Makeconf:159: adesub.o] Error 1
ERROR: compilation failed for package ‘ade4’
* removing ‘/opt/R/3.4.3/lib/R/library/ade4’

Could someone please advise on this, I know its a old version of the package but that is our requirement for now and also I did try to install the newer version but it resulted in the same error.

Steps I have tried to resolve the issue

dnf install blas-devel
dnf install lapack-devel
dnf install gcc-gfortran
dnf install lapack-devel
R CMD INSTALL ade4_1.7-10.tar.gz

This is a RHEL 8 environment and gcc version it has is 8.3.1 20191121 (Red Hat 8.3.1-5)

Rotations for PCA?

Good evening,

I would be keen to carry out axes rotations on the original results of say a PCA to clarify axes interpretation ; is there a function in the package that would do that?
If not, what would you suggest?

I really like the package framework and its graphical identity, so, keen to keep using ade4 at every step.

Thank you,
E.

niche.param(x) requires `x$call[[2]]` to still be in the environment

From @Rekyt via ropensci/drake#590:

library(ade4)
data(doubs)
dudi1 <- dudi.pca(doubs$env, scale = TRUE, scan = FALSE, nf = 3)
nic1 <- niche(dudi1, doubs$fish, scann = FALSE)
omi <- niche.param(nic1)
rm(dudi1)
omi <- niche.param(nic1)
#> Error in eval(expr, p): object 'dudi1' not found

If nic1 really needs dudi1 in order to use niche.param(), is there some way to make sure the value of dudi1 gets passed along with nic1? Maybe in a new list element of nic1 or another argument to niche.param()?

ade4 function fourthcorner

When running the fourthcorner example in the description file, it gives me a graph without the black tiles.
plot_zoom_png

I think it's suppose to look like this example here from pbil.univ-lyon1.fr website. Do you have any idea?

Thanks,

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.