我有一个大型数据集,并且喜欢为每个城市(我的数据中的列之一)拟合不同的逻辑回归。以下 70/30 拆分在不考虑城市组的情况下工作。
indexes <- sample(1:nrow(data), size = 0.7*nrow(data))
train <- data[indexes,]
test <- data[-indexes,]
但这并不能保证每个城市的 70/30 比例。
假设我有城市 A 和城市 B,其中城市 A 有 100 行,城市 B 有 900 行,总共 1000 行。使用上面的代码拆分数据将为我提供 700 行用于火车和 300 行用于测试数据,但它不能保证我将在火车数据中为城市 A 提供 70 行,为城市 B 提供 630 行。我怎么做?
一旦我将每个城市的训练数据拆分为 70/30 时尚,我将为每个城市运行逻辑回归(一旦我有了训练数据,我就知道该怎么做)