如何解决具有NIPALS算法的PCA在R包nipals和mvdalab中返回不同的结果
我尝试在R中使用“非线性迭代部分最小二乘”(NIPALS)算法对数据运行PCA。我尝试了R包import NextAuth from "next-auth";
import Providers from "next-auth/providers";
import axios from "axios";
export default (req,res) =>
NextAuth(req,res,{
providers: [
Providers.Credentials({
id: 'app-login',name: APP
authorize: async (credentials) => {
console.log("credentials_:",credentials);
try {
const data = {
username: credentials.username,password: credentials.password
}
// API call associated with authentification
// look up the user from the credentials supplied
const user = await login(data);
if (user) {
// Any object returned will be saved in `user` property of the JWT
return Promise.resolve(user);
}
} catch (error) {
if (error.response) {
console.log(error.response);
Promise.reject(new Error('Invalid Username and Password combination'));
}
}
},}),],site: process.env.NEXTAUTH_URL || "http://localhost:3000",session: {
// Use JSON Web Tokens for session instead of database sessions.
// This option can be used with or without a database for users/accounts.
// Note: `jwt` is automatically set to `true` if no database is specified.
jwt: true,// Seconds - How long until an idle session expires and is no longer valid.
maxAge: 1 * 3 * 60 * 60,// 3 hrs
// Seconds - Throttle how frequently to write to database to extend a session.
// Use it to limit write operations. Set to 0 to always update the database.
// Note: This option is ignored if using JSON Web Tokens
updateAge: 24 * 60 * 60,// 24 hours
},callbacks: {
// signIn: async (user,account,profile) => { return Promise.resolve(true) },// redirect: async (url,baseUrl) => { return Promise.resolve(baseUrl) },// session: async (session,user) => { return Promise.resolve(session) },// jwt: async (token,user,profile,isNewUser) => { return Promise.resolve(token) }
},pages: {
signIn: '/auth/credentials-signin',signOut: '/auth/credentials-signin?logout=true',error: '/auth/credentials-signin',// Error code passed in query string as ?error=
newUser:'/'
},debug: process.env.NODE_ENV === "development",secret: process.env.NEXT_PUBLIC_AUTH_SECRET,jwt: {
secret: process.env.NEXT_PUBLIC_JWT_SECRET,}
});
const login = async data => {
var config = {
headers: {
'Content-Type': "application/json; charset=utf-8",'corsOrigin': '*',"Access-Control-Allow-Origin": "*"
}
};
const url = remote_user_url;
const result = await axios.post(url,data,config);
console.log('result',result);
return result;
};
和nipals
,但我没有进行管理以获得相同的PCA分数。
mvdalab
我尝试过使用不同的方法进行居中和缩放,但无法获得一致的PCA分数。我想我正在忽略一些参数。任何建议,我将不胜感激!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。