Compute Supervised Dimension Projection and related variables for plotting words.

textProjection(
  words,
  wordembeddings,
  single_wordembeddings = single_wordembeddings_df,
  x,
  y = NULL,
  pca = NULL,
  aggregation = "mean",
  split = "quartile",
  word_weight_power = 1,
  min_freq_words_test = 0,
  Npermutations = 10000,
  n_per_split = 50000,
  seed = 1003
)

Arguments

words

Word or text variable to be plotted.

wordembeddings

Word embeddings from textEmbed for the words to be plotted (i.e., the aggregated word embeddings for the "words" parameter).

single_wordembeddings

Word embeddings from textEmbed for individual words (i.e., decontextualized embeddings).

x

Numeric variable that the words should be plotted according to on the x-axes.

y

Numeric variable that the words should be plotted according to on the y-axes (y=NULL).

pca

Number of PCA dimensions applied to the word embeddings in the beginning of the function. A number below 1 takes out % of variance; An integer specify number of components to extract. (default is NULL as this setting has not yet been evaluated).

aggregation

Method to aggregate the word embeddings (default = "mean"; see also "min", "max", and "[CLS]").

split

Method to split the axes (default = "quartile" involving selecting lower and upper quartile; see also "mean"). However, if the variable is only containing two different values (i.e., being dichotomous) mean split is used.

word_weight_power

Compute the power of the frequency of the words and multiply the word embeddings with this in the computation of aggregated word embeddings for group low (1) and group high (2). This increases the weight of more frequent words.

min_freq_words_test

Option to select words that have occurred a specified number of times (default = 0); when creating the Supervised Dimension Projection line (i.e., single words receive Supervised Dimension Projection and p-value).

Npermutations

Number of permutations in the creation of the null distribution.

n_per_split

A setting to split Npermutations to avoid reaching computer memory limits; the higher the faster, but too high may lead to abortion.

seed

Set different seed.

Value

A dataframe with variables (e.g., including Supervised Dimension Projection, frequencies, p-values) for the individual words that is used for the plotting in the textProjectionPlot function.

Examples

# Data wordembeddings <- wordembeddings4 raw_data <- Language_based_assessment_data_8 # Pre-processing data for plotting df_for_plotting <- textProjection( words = raw_data$harmonywords, wordembeddings = wordembeddings$harmonywords, single_wordembeddings = wordembeddings$singlewords_we, x = raw_data$hilstotal, split = "mean", Npermutations = 10, n_per_split = 1 ) df_for_plotting
#> # A tibble: 295 x 8 #> words n dot.x p_values_dot.x n_g1.x n_g2.x n.percent N_participant_r… #> <chr> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <int> #> 1 accep… 2 NA NA -1 1 0.00504 40 #> 2 agree… 1 0.0365 0.0909 NA 1 0.00252 40 #> 3 alcoh… 1 -0.0546 0.0909 -1 NA 0.00252 40 #> 4 amazed 1 0.0372 0.0909 NA 1 0.00252 40 #> 5 amica… 1 0.0641 0.0909 NA 1 0.00252 40 #> 6 amity 1 0.0271 0.0909 NA 1 0.00252 40 #> 7 amused 1 -0.00307 0.0909 NA 1 0.00252 40 #> 8 anger 2 NA NA -2 NA 0.00504 40 #> 9 angry 2 NA NA -2 NA 0.00504 40 #> 10 anima… 1 NA NA NA 1 0.00252 40 #> # … with 285 more rows
#' @seealso see \code{\link{textProjectionPlot}}