使用R比较两个数据框并存储数据

我有一个数据框(model_trin_data_df),包含2986个观测值和645个变量,另一个数据框(input_data_df)包含1个观测值和6个变量。其中model_trin_data_df包含了input_data_df的所有6个变量。现在我想通过比较这两个数据框创建另一个数据框,其中包含所有变量(即2992个观测值),但只有一条观测记录。

> input_data_df  blue red white black green gold   1     1    1      3    1    1> train_data_df  bat blue red ball come white black cow green tiger gold go   1   2    0    1   0     0    1    0    0     0    0    1  0   0    0    0   0     1    0    2    0     0    1    0输出数据框应该如下所示 -         > output_data_df     bat blue red ball come white black cow green tiger gold go      0   1    1    0   0     1    3    0    1     0    1    0

我对train_data_df的观测值并不关心。我需要的是output_data_df正确包含input_data_df的所有观测值,其余变量设为0。

我该如何实现这一点?

提前感谢。


回答:

你可以执行以下操作:

# datainput_data <- data.frame(blue=1, red=1, white=1, black=3, green=1, gold=1)train_data <- data.frame(bat=c(1,0),                         blue=c(2,0),                         red=c(0,0),                         ball=c(1,0),                         black=c(1,0))# 这将给出答案output_df <- sapply(colnames(train_data), function(x){    if(x %in% colnames(input_data)) return (input_data[,x])    else return (0)}, USE.NAMES = F)# 设置名称names(output_df) <- names(train_data)print(output_df)bat  blue   red  ball black  0     1     1     0     3 

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注