如何将一个数据框按行拆分成多个数据框然后导出到excel?右

2023-12-30

这是我正在使用的数据

Sales <- data.frame(State  = c("New York", "New Jersey", "Texas","New Mexico","California",
                                "Kansas","Florida","Alaska","Montana", "Maine"),
                     
                  Units = c(455,453,125,135,135,568,451,125,215,314),
                  
                  Sales = c("20000","12530","51110","54110","65000",
                            "58220","54612","45102","45896","12510"),
                             
                  ManagerName = c("Chip","Kelly","Steve","Young","Troy",
                                  "Aikman", "Chad","Pennington","Mike","Vick")
                  
)

我的最终目标是为每个“状态”创建 10 个不同的 Excel 文件。

我知道我可以做类似的事情

#Seperate by State
library(dplyr)
NewYork <- Sales %>% filter(State == "New York") 

#Save to excel
library(xlsx)
write.xlsx(NewYork, file="NewYork-Sales-November2020.xlsx", 
           sheetName="NewYork")

但问题是我有超过 50 行,并且不希望有 50 个命令按状态过滤,然后再有 50 个命令写入 Excel 文件。

有没有更有效的方法将每一行“状态”保存到不同的 Excel 文件中?


以下内容符合问题的要求,我已经用发布的数据对其进行了测试。

  1. split数据由State;
  2. 创建工作簿;
  3. 将工作表添加到工作簿中;
  4. 将每个子data.frame写入工作簿;
  5. 将所有内容保存到磁盘。

这些工作表的名称为State.

library(openxlsx)

sp <- split(Sales, Sales$State)
names(sp) <- ifelse(nchar(names(sp)) > 31, substr(names(sp), 1, 31), names(sp))
wb <- createWorkbook(creator = "FruityPebblePug")
lapply(seq_along(sp), function(i){
  addWorksheet(wb, sheetName = names(sp)[[i]])
})
lapply(seq_along(sp), function(i){
  writeData(wb, sheet = names(sp)[[i]], sp[[i]])
})
saveWorkbook(wb, "Sales-November2020.xlsx")

如中所述comments https://stackoverflow.com/questions/64701971/how-to-split-a-data-frame-by-row-into-multiple-data-frames-and-then-export-them/64702430?noredirect=1#comment114404375_64702430,如果工作表名称字符过多,超出Excel的31个字符限制,则以下将命名工作表"State 1", "State 2", etc.

sp <- split(Sales, Sales$State)
wb <- createWorkbook(creator = "FruityPebblePug")
lapply(seq_along(sp), function(i){
  addWorksheet(wb, sheetName = paste("State", i))
})
lapply(seq_along(sp), function(i){
  writeData(wb, sheet = paste("State", i), sp[[i]])
})
saveWorkbook(wb, "Sales-November2020_b.xlsx")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将一个数据框按行拆分成多个数据框然后导出到excel?右 的相关文章

  • 将文件夹中的多个 csv 文件读取到 R 中的单个数据帧中[重复]

    这个问题在这里已经有答案了 我有一个包含 332 个 csv 文件的文件夹 文件名称如下 001 csv 002 csv 003 csv 330 csv 331 csv 332 csv 所有文件都具有相同数量的变量和相同的格式 我需要读取一
  • 距数据帧中最近的非 NA 值的距离

    我有以下数据帧 df 我想添加一列 其中包含与每行最接近的非 NA 值的距离 df lt data frame x 1 20 df c 1 3 4 5 11 14 15 16 x lt NA 换句话说 我正在寻找以下值 df distanc
  • R中无法连接odbc数据库

    我一直在尝试使用以下命令将我公司的 DMS 连接到 RodbcConnect命令 但收到以下消息 myConn lt odbcConnect NZSQL uid cejacobson pwd password Warning message
  • 如何更改 r 中的树状图标签

    我在 R 中有一个树形图 它基于使用 hclust 的分层聚类 我正在对不同颜色的标签进行着色 但是当我尝试使用以下命令更改树图的标签 集群所基于的数据帧的行 时dendrogram dendrogram gt set labels dat
  • 在 R 中安全地计算算术表达式?

    Edit 好吧 由于似乎有很多混乱 我将稍微简化一下问题 您可以尝试回答下面的原始问题 或者您可以解决此版本并忽略该行下面的所有内容 我的目标是采用任意表达式并在极其受限的环境中对其进行评估 该环境将仅包含具有以下类型值的变量 数值向量 接
  • 使用 roxygen2 导入两个同名函数

    我是 CRAN 包的维护者 在加载时收到以下消息 checking whether package qdap can be installed 10s 10s WARNING Found the following significant
  • 如何在 R Markdown 中的内联 LateX 方程中输出 R 变量的值(即动态更新)

    我无法找到一种方法将 r 代码实现到 R markdown 中的内联 LateX 方程中 目标是如果变量 值 发生变化 则不必对它们的值进行硬编码 Given values lt c 1 4 2 5 7 9 avg lt sum value
  • R 中的点图每行有多个值

    我有以下 R 输入文件 car 1 car 2 car 3 car2 1 car2 2 car2 3 然后 我使用以下命令来绘制图表 autos data 点图 autos data V2 autos data V1 但这将每个汽车和 ca
  • 在ggplot2中,箱线图线的末尾代表什么?

    我找不到箱线图线条端点代表什么的描述 For example here are point values above and below where the lines end 我意识到盒子的顶部和底部是第 25 个和第 75 个百分位数
  • 使用 R 下载压缩数据文件、提取并导入 .csv

    我正在尝试使用以下方法从网页下载并提取 csv 文件R 这个问题是重复的使用 R 下载压缩数据文件 提取和导入数据 https stackoverflow com questions 3053833 using r to download
  • 使用 R Markdown 文档作为函数源

    我正在研究 R Markdown 来记录我经常使用的功能 我会将它们放入 R Markdown 文件中以记录它们 然后如果我几个月后回来查看它 就能够阅读我在函数背后的想法 我的问题是 如果我开始一个新的 R 项目 是否可以获取 r mar
  • 在zooreg时间序列中查找非唯一索引条目时遇到问题

    我有几年的数据正在尝试将其转化为动物园对象 Dropbox 上的 csv https www dropbox com sh vg8w8pt16e0v3xs AABKtWqDkPu9JVKpwBXO36VOa dl 0 一旦数据被强制转换为动
  • R 无法回忆起内存中的对象

    我正在构建一个包含多个步骤的函数 其中每个步骤都会创建一个对象 某个步骤失败 temp3 并且无法找到前面的步骤对象 错误 未找到对象 temp2 我不知道为什么 我有类似的函数 遵循完全相同的结构 每个步骤都遵循先前创建的对象 在函数内
  • 基本 dyplr 函数给出错误:“check_dots_used”

    试图找出为什么我会收到此错误 以前从未见过 谷歌没有帮助 check dots used action warn 中的错误 未使用参数 action warn 我在下面的非常基本的试验中收到错误 而且在 group by count 中也收
  • R中具有特定条件的多列变异

    我有这个数据 M1 M2 M3 UCL 1 2 3 1 5 我想在这种情况下创建新列 如果M1大于UCL MM1将为 UP 否则为 NULL 如果M2大于UCL MM2将为 UP 否则为 NULL 如果M3大于UCL MM3将为 UP 否则
  • 使用矢量相应地更改传单线条的颜色

    无论如何 是否可以根据某些变量的值更改传单线条的颜色 我用谷歌搜索 发现了这个link http hgoebl github io Leaflet MultiOptionsPolyline demo 然而 我想知道是否有一种简单的方法可以在
  • 按名称包含在单个对象中的多个列对 data.frame 进行排序?

    我想排序一个data frame由多列组成 理想情况下使用基础 R 无需任何外部包 尽管如果有必要 就这样吧 读过如何按列对数据框进行排序 https stackoverflow com questions 1296646 how to s
  • ggplot2 + 使用比例 X 的日期结构

    我真的需要帮助 因为我已经迷路了 我正在尝试创建一个折线图 显示几个团队一年来的表现 我将一年分为几个季度 2012 年 1 月 1 日 2012 年 4 月 1 日 2012 年 8 月 1 日 12 1 12 并将 csv 数据帧加载到
  • 如何在闪亮的observeEvent中监听多个事件表达式

    我想要两个不同的事件触发观察者 有人建议here https stackoverflow com questions 34731975 how to listen for more than one event expression wit
  • 解压 R 数据框中的列表

    我有一个dataframe其中一个字段包含不同长度的列表 我想将该字段中列表的每个元素提取到其自己的字段中 以便我可以将结果收集到一个很长的字段中dataframe每个列表元素都有一个 id 这是一个例子dataframe dat lt s

随机推荐

  • 如何使用 JQuery 获取 在表中的位置?

    例如 table tr td 1 1 td td 2 1 td tr tr td 2 1 td td 2 2 td tr table 我想使用以下功能 td click function alert xxxx 得到单击时的位置 但是如何呢
  • 如何有效地跟踪地图上的空间(包括对象和空闲区域)的使用情况

    好的 我从一张空白地图开始 即 512x512 262144 像素 位置 我需要一种方法来有效地在其上绘制一些对象 然后能够找到可用空间区域 以便以后可以将更多不同的对象添加到这些可用区域中 我无法找出存储这些数据的最佳方法 或找到空闲区域
  • 如何在 Isabelle 的 ML 级别轻松编写简单的策略?

    在 Isabelle 理论文件中 我可以编写简单的一行策略 如下所示 apply clarsimp simp split def split prod splits 然而 我发现 当我开始编写 ML 代码来自动化证明 生成 MLtactic
  • For 循环正在跳过一些东西! Python

    我正在尝试运行此代码 以便它为列表的所有元素运行一个函数 出于说明目的 基本上应该打印 Possible Word possible word 对于我的列表中的所有项目 因此 如果我输入 p r s 它将运行打印 3 次 每一项打印一次 我
  • 在生产中调试反应应用程序时无法在控制台中看到我的变量

    我是反应世界的新手 并尝试在我的共享点环境中使用它 我正在使用源映射打包用于生产的应用程序 并将其上传到我将在其中使用它的共享点站点 应用程序在共享点中运行没有问题 但在开发人员工具箱中我无法完全调试它 我可以看到我的 js 文件 放置调试
  • 从 NSDate 获取时间返回 nil

    我试图在图表上显示时间 并且我有一个完整的时间戳 格式为 2012 08 28 18 50 24 当我尝试从该日期获取时间时 它在 NSDate 中返回 nil NSDateFormatter formatter NSDateFormatt
  • 使用 glvertex4i 传递网格面索引时顶点着色器错误

    初始化 GL List 进行处理 glBegin GL POINTS for i 0 i lt faceNum i mesh gt GetFaceNodes i 1 ver 0 ver 1 ver 2 ver 3 glVertex4i ve
  • 帧指针省略?有风险吗?

    我总是在编译器中打开此功能 它在阅读更干净的汇编代码时对调试有很大帮助 我认为它对速度优化方面没有太大影响 使CPU能够进行流水线操作 但至少它确实为寄存器分配提供了新的机会 因此获得了一个新的空闲寄存器EBP 不确定编译器是否会使用它 我
  • EJB 容器中的 ThreadLocal(和 Singleton)

    我编写了一个授权系统 它依赖于代表当前用户的对象 为了简化编程并提高性能 我想在用户登录后将这些对象保存在 ThreadLocal 中 它看起来像这样 public class UserCache private static final
  • C# Diamond-继承(接口实现)

    如果一个类从两个单独的接口实现一个接口 它的行为是否与仅实现一次相同 Example public interface IAnimal public interface IFullAnimal IAnimal public interfac
  • 将枚举值添加到简单的组合框

    我有一个关于 C 和 WPF 的非常简单的问题要问 在我的这次尝试之后 我的问题将随之而来 private void Window Loaded object sender RoutedEventArgs e foreach var ite
  • gdb 上漂亮的打印 boost::unordered_map

    最近我开始在我的系统上使用优秀的 boost unordered map 但有一个缺点 我不知道如何检查其内容 在 gdb 上打印它会给我一个 table 和一个 buckets 但还没有找到这些项目在哪里 有人对此有任何线索吗 对于那些想
  • 将Java线程类放入一个单独的类中

    考虑以下 SWT 代码示例 http dev eclipse org viewcvs index cgi org eclipse swt snippets src org eclipse swt snippets Snippet151 ja
  • Microsoft SQL Server 分析服务 OLAP 多维数据集

    我试图找到一种工具来提高应用程序报告的性能 我听说了 OLAP Reporting Services 它被描述为完成这项工作的绝佳组合 无论如何 我没有找到使 OLAP 多维数据集保持最新的方法 因为原始数据库中的数据可能会更改 这是一个交
  • 为什么代码终止时出现“未找到解决方案”错误和“退出:收敛到局部不可行点。问题可能不可行”?

    我似乎不明白为什么IPOPT无法找到解决方案 最初 我认为这个问题完全不可行 但是当我减少总列数至以下任意号码161000 or 注释掉最后一个约束方程其中包含总列数 它解决并退出Optimal Solution Found and a f
  • Matplotlib:如何再次显示绘图?

    假设我做了一个情节Ipython Notebook 在几个单元格之后 我想再次渲染它 这样我就可以将它与其他图进行比较 我该怎么做 a 1 2 3 4 b 3 4 5 6 fig plt plot a b color black 这将显示情
  • Twig 迭代对象属性

    我在 Twig 文档中读到 可以通过以下方式迭代关联数组 for key value in array key value endfor 我想知道这对于 stdClass 类型的对象是否也可能 我希望 Twig 能够以属性名称作为键来迭代对
  • 我可以在 ASP.NET 中使用 X509Certificate2 而不使用证书存储吗?

    我正在尝试在 Rackspace 云中的 ASP NET Web 服务中使用 X509Certificate 我有一种感觉 存储在云节点上的证书可能会引起问题 我也有一个与此相关的问题 但我收到的问题是使用 iPhone Apple 推送通
  • Twitter Bootstrap 模态宽度问题

    我的应用程序具有许多模式 所有模式都有不同的宽度 我知道您可以通过执行以下操作来设置模态内联的宽度 宽度 400 像素 左边距 200px 这效果很好 但是如果你压缩窗口 它会将模态占到屏幕的 50 所以你看不到一半的模态渲染 在这些小分辨
  • 如何将一个数据框按行拆分成多个数据框然后导出到excel?右

    这是我正在使用的数据 Sales lt data frame State c New York New Jersey Texas New Mexico California Kansas Florida Alaska Montana Mai