← Back to Skills Marketplace
wu-uk

pca-decomposition

by wu-uk · GitHub ↗ · v0.1.0 · MIT-0
cross-platform ✓ Security Clean
74
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install lake-warming-attribution-pca-decomposition
Description
Reduce dimensionality of multivariate data using PCA with varimax rotation. Use when you have many correlated variables and need to identify underlying facto...
README (SKILL.md)

PCA Decomposition Guide

Overview

Principal Component Analysis (PCA) reduces many correlated variables into fewer uncorrelated components. Varimax rotation makes components more interpretable by maximizing variance.

When to Use PCA

  • Many correlated predictor variables
  • Need to identify underlying factor groups
  • Reduce multicollinearity before regression
  • Exploratory data analysis

Basic PCA with Varimax Rotation

from sklearn.preprocessing import StandardScaler
from factor_analyzer import FactorAnalyzer

# Standardize data first
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

# PCA with varimax rotation
fa = FactorAnalyzer(n_factors=4, rotation='varimax')
fa.fit(X_scaled)

# Get factor loadings
loadings = fa.loadings_

# Get component scores for each observation
scores = fa.transform(X_scaled)

Workflow for Attribution Analysis

When using PCA for contribution analysis with predefined categories:

  1. Combine ALL variables first, then do PCA together:
# Include all variables from all categories in one matrix
all_vars = ['AirTemp', 'NetRadiation', 'Precip', 'Inflow', 'Outflow',
            'WindSpeed', 'DevelopedArea', 'AgricultureArea']
X = df[all_vars].values

scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

# PCA on ALL variables together
fa = FactorAnalyzer(n_factors=4, rotation='varimax')
fa.fit(X_scaled)
scores = fa.transform(X_scaled)
  1. Interpret loadings to map factors to categories (optional for understanding)

  2. Use factor scores directly for R² decomposition

Important: Do NOT run separate PCA for each category. Run one global PCA on all variables, then use the resulting factor scores for contribution analysis.

Interpreting Factor Loadings

Loadings show correlation between original variables and components:

Loading Interpretation
> 0.7 Strong association
0.4 - 0.7 Moderate association
\x3C 0.4 Weak association

Example: Economic Indicators

import pandas as pd
from sklearn.preprocessing import StandardScaler
from factor_analyzer import FactorAnalyzer

# Variables: gdp, unemployment, inflation, interest_rate, exports, imports
df = pd.read_csv('economic_data.csv')
variables = ['gdp', 'unemployment', 'inflation',
             'interest_rate', 'exports', 'imports']

X = df[variables].values
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

fa = FactorAnalyzer(n_factors=3, rotation='varimax')
fa.fit(X_scaled)

# View loadings
loadings_df = pd.DataFrame(
    fa.loadings_,
    index=variables,
    columns=['RC1', 'RC2', 'RC3']
)
print(loadings_df.round(2))

Choosing Number of Factors

Option 1: Kaiser Criterion

# Check eigenvalues
eigenvalues, _ = fa.get_eigenvalues()

# Keep factors with eigenvalue > 1
n_factors = sum(eigenvalues > 1)

Option 2: Domain Knowledge

If you know how many categories your variables should group into, specify directly:

# Example: health data with 3 expected categories (lifestyle, genetics, environment)
fa = FactorAnalyzer(n_factors=3, rotation='varimax')

Common Issues

Issue Cause Solution
Loadings all similar Too few factors Increase n_factors
Negative loadings Inverse relationship Normal, interpret direction
Low variance explained Data not suitable for PCA Check correlations first

Best Practices

  • Always standardize data before PCA
  • Use varimax rotation for interpretability
  • Check factor loadings to name components
  • Use Kaiser criterion or domain knowledge for n_factors
  • For attribution analysis, run ONE global PCA on all variables
Usage Guidance
This skill is an instruction-only guide for performing PCA with varimax rotation and appears coherent and low-risk. Before using it: (1) ensure you have the required Python libraries (pandas, scikit-learn, factor_analyzer) installed from trusted sources; (2) run the example code on non-sensitive or test data first to confirm behavior; and (3) note that the SKILL.md provides guidance only — it won't install dependencies for you. If you need automated execution, verify what runtime will execute the code and whether it has access to your files or network.
Capability Analysis
Type: OpenClaw Skill Name: lake-warming-attribution-pca-decomposition Version: 0.1.0 The skill bundle provides legitimate documentation and code examples for performing Principal Component Analysis (PCA) using standard libraries like sklearn and factor_analyzer. The content in SKILL.md is focused entirely on statistical data processing and lacks any indicators of malicious intent, data exfiltration, or prompt injection.
Capability Assessment
Purpose & Capability
Name and description match the instructions: the SKILL.md describes PCA with varimax rotation and gives examples for factor analysis and attribution. There are no requested credentials, binaries, or unrelated requirements.
Instruction Scope
Instructions stay within expected bounds (data standardization, PCA, interpreting loadings). Example code reads a CSV and references dataframe variables — normal for an analysis guide. The doc does not instruct reading system files, environment variables, or transmitting data externally. Note: it presumes you will run the provided Python snippets in your environment.
Install Mechanism
No install spec (lowest risk). However, the guide uses Python libraries (scikit-learn, factor_analyzer, pandas) but does not declare or provide installation instructions for those dependencies; this is an interoperability/documentation omission rather than a security problem.
Credentials
No environment variables, credentials, or config paths are requested. The skill does not ask for any secrets or unrelated permissions.
Persistence & Privilege
always:false and no install or code files — the skill does not request persistent presence or elevated privileges.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install lake-warming-attribution-pca-decomposition
  3. After installation, invoke the skill by name or use /lake-warming-attribution-pca-decomposition
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
Bulk publish from all-task-skills-dedup
Metadata
Slug lake-warming-attribution-pca-decomposition
Version 0.1.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is pca-decomposition?

Reduce dimensionality of multivariate data using PCA with varimax rotation. Use when you have many correlated variables and need to identify underlying facto... It is an AI Agent Skill for Claude Code / OpenClaw, with 74 downloads so far.

How do I install pca-decomposition?

Run "/install lake-warming-attribution-pca-decomposition" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is pca-decomposition free?

Yes, pca-decomposition is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does pca-decomposition support?

pca-decomposition is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created pca-decomposition?

It is built and maintained by wu-uk (@wu-uk); the current version is v0.1.0.

💬 Comments