For variably sized data frames, identifying row positions to place them with equal spaces in between
In R, supposing I have a list of data frames with the following number of rows:
library(data.table)
df1 <- data.table(totRows = c(5,3,10,8))
I want to be able to export such a list of dataframes to one Excel sheet, but with equal interval/space in between each (let's say, 2 empty rows in between each). I also need to place a header just above each exported dataframe.
For this, I have to identify the row positions that would enable me to create equal intervals, but with my approach so far, I have only been able to get irregular intervals, and it already looks convoluted.
headerPosition <- c(1,cumsum(df1$totRows + 4))
# adding 4 to prevent any chances of overlap
# also, prepending 1 to indicate that first header goes in row 1
headerPosition <- headerPosition[-length(headerPosition)]
# This will be the header's position
df1[, headerPosition := headerPosition]
# The following are the row positions, but using cumsum means
# I end up creating irregular space in between
df1[, rowPosition := headerPosition + 1]
Is there a more concise way of obtaining regular spaces in between, as I am sure there is?
r dataframe
add a comment |
In R, supposing I have a list of data frames with the following number of rows:
library(data.table)
df1 <- data.table(totRows = c(5,3,10,8))
I want to be able to export such a list of dataframes to one Excel sheet, but with equal interval/space in between each (let's say, 2 empty rows in between each). I also need to place a header just above each exported dataframe.
For this, I have to identify the row positions that would enable me to create equal intervals, but with my approach so far, I have only been able to get irregular intervals, and it already looks convoluted.
headerPosition <- c(1,cumsum(df1$totRows + 4))
# adding 4 to prevent any chances of overlap
# also, prepending 1 to indicate that first header goes in row 1
headerPosition <- headerPosition[-length(headerPosition)]
# This will be the header's position
df1[, headerPosition := headerPosition]
# The following are the row positions, but using cumsum means
# I end up creating irregular space in between
df1[, rowPosition := headerPosition + 1]
Is there a more concise way of obtaining regular spaces in between, as I am sure there is?
r dataframe
add a comment |
In R, supposing I have a list of data frames with the following number of rows:
library(data.table)
df1 <- data.table(totRows = c(5,3,10,8))
I want to be able to export such a list of dataframes to one Excel sheet, but with equal interval/space in between each (let's say, 2 empty rows in between each). I also need to place a header just above each exported dataframe.
For this, I have to identify the row positions that would enable me to create equal intervals, but with my approach so far, I have only been able to get irregular intervals, and it already looks convoluted.
headerPosition <- c(1,cumsum(df1$totRows + 4))
# adding 4 to prevent any chances of overlap
# also, prepending 1 to indicate that first header goes in row 1
headerPosition <- headerPosition[-length(headerPosition)]
# This will be the header's position
df1[, headerPosition := headerPosition]
# The following are the row positions, but using cumsum means
# I end up creating irregular space in between
df1[, rowPosition := headerPosition + 1]
Is there a more concise way of obtaining regular spaces in between, as I am sure there is?
r dataframe
In R, supposing I have a list of data frames with the following number of rows:
library(data.table)
df1 <- data.table(totRows = c(5,3,10,8))
I want to be able to export such a list of dataframes to one Excel sheet, but with equal interval/space in between each (let's say, 2 empty rows in between each). I also need to place a header just above each exported dataframe.
For this, I have to identify the row positions that would enable me to create equal intervals, but with my approach so far, I have only been able to get irregular intervals, and it already looks convoluted.
headerPosition <- c(1,cumsum(df1$totRows + 4))
# adding 4 to prevent any chances of overlap
# also, prepending 1 to indicate that first header goes in row 1
headerPosition <- headerPosition[-length(headerPosition)]
# This will be the header's position
df1[, headerPosition := headerPosition]
# The following are the row positions, but using cumsum means
# I end up creating irregular space in between
df1[, rowPosition := headerPosition + 1]
Is there a more concise way of obtaining regular spaces in between, as I am sure there is?
r dataframe
r dataframe
edited Nov 26 '18 at 8:42
info_seekeR
asked Nov 26 '18 at 6:08
info_seekeRinfo_seekeR
751821
751821
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53475562%2ffor-variably-sized-data-frames-identifying-row-positions-to-place-them-with-equ%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53475562%2ffor-variably-sized-data-frames-identifying-row-positions-to-place-them-with-equ%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown