Example #1
0
def independentComponentAnalysis(data, n_components):
    kurtosis = {}

    for iterN in range(1, n_components):
        ic = FastICA(n_components = iterN, random_state= seed).fit_transform(data)
        ic = pd.DataFrame(ic)
        ic = ic.kurtosis(axis = 0)
        kurtosis[iterN] = ic.abs().mean()
    
    plt.figure()
    plt.plot(list(kurtosis.keys()), list(kurtosis.values()))
    plt.xlabel("Number of Components")
    plt.ylabel("Kurtosis")     
    
    return plt, kurtosis, ic