楼主: liuqiang0704
853 8

[问答] 请教一个根据行数选择数据的问题? [推广有奖]

  • 0关注
  • 0粉丝

已卖:1份资源

硕士生

64%

还不是VIP/贵宾

-

威望
0
论坛币
28 个
通用积分
34.3151
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
3063 点
帖子
46
精华
0
在线时间
291 小时
注册时间
2015-8-18
最后登录
2025-6-23

楼主
liuqiang0704 发表于 2023-2-28 16:22:07 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位大佬,假设我有A、B、C 这3个数据,它们的行数各不相同,我想写个程序,把行数最大的数据命名L,行数中等的命名为M,行数最小的命名为S。请问有什么好的办法吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:最大的

回帖推荐

llb_321 发表于4楼  查看完整内容

参考:

沙发
橙红的果士 学生认证  发表于 2023-3-1 08:54:59
把每个数据集的行数读出来,然后写个条件判断就可以了吧

藤椅
liuqiang0704 发表于 2023-3-1 09:09:08
橙红的果士 发表于 2023-3-1 08:54
把每个数据集的行数读出来,然后写个条件判断就可以了吧
大佬,问题是怎么写这个条件判断,我想了好久没头绪

板凳
llb_321 在职认证  发表于 2023-3-1 11:49:36
参考:
  1. #三个示例数据
  2. A <- data.frame(x = 1:14, y = letters[1:14])
  3. B <- data.frame(x = 1:17, y = letters[1:17])
  4. C <- data.frame(x = 1:3, y = letters[1:3])
  5. #这里尽量理解
  6. dtN <- c("S", "M", "L")
  7. Rk <- rank(c(dim(A)[1], dim(B)[1], dim(C)[1]))
  8. #借道list
  9. filelist <- list(A = A, B = B, C = C)
  10. newlist <- list(L = data.frame(NULL),
  11.                 M = data.frame(NULL),
  12.                 S = data.frame(NULL))
  13. newlist[dtN[Rk[1:3]]] <- filelist
  14. #转成dt
  15. L <- as.data.frame.list(newlist[1])
  16. M <- as.data.frame.list(newlist[2])
  17. S <- as.data.frame.list(newlist[3])
  18. #改回变量名
  19. names(L) <- names(newlist[[1]])
  20. names(M) <- names(newlist[[2]])
  21. names(S) <- names(newlist[[3]])
复制代码

报纸
liuqiang0704 发表于 2023-3-1 16:04:48
llb_321 发表于 2023-3-1 11:49
参考:
大佬真牛啊,解决了我好大的问题,您真是论坛里的一面旗帜啊。

地板
llb_321 在职认证  发表于 2023-3-1 18:17:43 来自手机
liuqiang0704 发表于 2023-3-1 16:04
大佬真牛啊,解决了我好大的问题,您真是论坛里的一面旗帜啊。
同学而已。难承谬赞,汗颜。
已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
nieqiang110 + 5 + 5 + 5 + 5 精彩帖子

总评分: 论坛币 + 5  学术水平 + 5  热心指数 + 5  信用等级 + 5   查看全部评分

7
liugongqin 发表于 2023-3-1 19:48:39
提示: 作者被禁止或删除 内容自动屏蔽

8
nieqiang110 学生认证  发表于 2023-3-3 14:44:54
llb_321 发表于 2023-3-1 18:17
同学而已。难承谬赞,汗颜。
lib_321也是我的老师

9
abelus 发表于 2023-3-6 09:10:11
  1. #
  2. require(tidyverse)
  3. A <- data.frame(x = 1:14, y = letters[1:14])
  4. B <- data.frame(x = 1:17, y = letters[1:17])
  5. C <- data.frame(x = 1:3, y = letters[1:3])
  6. #
  7. lis <- list(A, B, C)
  8. nms <- c('S', 'M', 'L')
  9. #
  10. map2(lis, nms[rank(map_int(lis, nrow))], function(val, nm) assign(nm, val, pos = 1))
复制代码

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 14:25