What does the error “wrong sign in 'by' argument” mean when using the seq function in R?
I have a dataframe called forecast.df:
> str(forecast.df)
Classes ‘data.table’ and 'data.frame': 1027 obs. of 9 variables:
$ group : chr "IT" "IT" "IT" "IT" ...
$ Name : chr "name1" "name1" "name2" "name2" ...
$ position: chr "Specialist" "Specialist" "Analyst" "Analyst" ...
$ job : chr "job1" "job2" "job3" "job4" ...
$ dept : chr "IT" "FIN" "FIN" "P&C" ...
$ bucket : chr "Apr-18" "Apr-18" "Apr-18" "Apr-18" ...
$ start : Date, format: "2018-01-02" "2018-01-02" "2018-01-15" "2018-01-22" ...
$ end : Date, format: "2018-04-06" "2018-01-26" "2018-04-20" "2018-04-06" ...
$ hours : int 149 8 109 123 44 124 125 142 70 75 ...
- attr(*, ".internal.selfref")=<externalptr>
And instead of a start and end date, I am trying to transform it so each row has a single date, and a job that takes 3 days has three rows associated with it (needed for the visualization we are doing.)
The code I am using is this:
tidyForecast.df <- setDT(forecast.df)[ , list(group = group
, name = Name
, position = position
, job = job
, dept = dept
, bucket = bucket
, hours = hours
, date = seq(start
, end
, by = "day"))
, by = 1:nrow(forecast.df)]
And the error I am getting when I use this is:
Error in seq.int(0, to0 - from, by) : wrong sign in 'by' argument
I have never encountered this error before, and I used this same format earlier in the code and it worked, so maybe it's something nuanced?
r dataframe
add a comment |
I have a dataframe called forecast.df:
> str(forecast.df)
Classes ‘data.table’ and 'data.frame': 1027 obs. of 9 variables:
$ group : chr "IT" "IT" "IT" "IT" ...
$ Name : chr "name1" "name1" "name2" "name2" ...
$ position: chr "Specialist" "Specialist" "Analyst" "Analyst" ...
$ job : chr "job1" "job2" "job3" "job4" ...
$ dept : chr "IT" "FIN" "FIN" "P&C" ...
$ bucket : chr "Apr-18" "Apr-18" "Apr-18" "Apr-18" ...
$ start : Date, format: "2018-01-02" "2018-01-02" "2018-01-15" "2018-01-22" ...
$ end : Date, format: "2018-04-06" "2018-01-26" "2018-04-20" "2018-04-06" ...
$ hours : int 149 8 109 123 44 124 125 142 70 75 ...
- attr(*, ".internal.selfref")=<externalptr>
And instead of a start and end date, I am trying to transform it so each row has a single date, and a job that takes 3 days has three rows associated with it (needed for the visualization we are doing.)
The code I am using is this:
tidyForecast.df <- setDT(forecast.df)[ , list(group = group
, name = Name
, position = position
, job = job
, dept = dept
, bucket = bucket
, hours = hours
, date = seq(start
, end
, by = "day"))
, by = 1:nrow(forecast.df)]
And the error I am getting when I use this is:
Error in seq.int(0, to0 - from, by) : wrong sign in 'by' argument
I have never encountered this error before, and I used this same format earlier in the code and it worked, so maybe it's something nuanced?
r dataframe
give us an example to generate the data.
– Csd
Nov 21 '18 at 17:08
add a comment |
I have a dataframe called forecast.df:
> str(forecast.df)
Classes ‘data.table’ and 'data.frame': 1027 obs. of 9 variables:
$ group : chr "IT" "IT" "IT" "IT" ...
$ Name : chr "name1" "name1" "name2" "name2" ...
$ position: chr "Specialist" "Specialist" "Analyst" "Analyst" ...
$ job : chr "job1" "job2" "job3" "job4" ...
$ dept : chr "IT" "FIN" "FIN" "P&C" ...
$ bucket : chr "Apr-18" "Apr-18" "Apr-18" "Apr-18" ...
$ start : Date, format: "2018-01-02" "2018-01-02" "2018-01-15" "2018-01-22" ...
$ end : Date, format: "2018-04-06" "2018-01-26" "2018-04-20" "2018-04-06" ...
$ hours : int 149 8 109 123 44 124 125 142 70 75 ...
- attr(*, ".internal.selfref")=<externalptr>
And instead of a start and end date, I am trying to transform it so each row has a single date, and a job that takes 3 days has three rows associated with it (needed for the visualization we are doing.)
The code I am using is this:
tidyForecast.df <- setDT(forecast.df)[ , list(group = group
, name = Name
, position = position
, job = job
, dept = dept
, bucket = bucket
, hours = hours
, date = seq(start
, end
, by = "day"))
, by = 1:nrow(forecast.df)]
And the error I am getting when I use this is:
Error in seq.int(0, to0 - from, by) : wrong sign in 'by' argument
I have never encountered this error before, and I used this same format earlier in the code and it worked, so maybe it's something nuanced?
r dataframe
I have a dataframe called forecast.df:
> str(forecast.df)
Classes ‘data.table’ and 'data.frame': 1027 obs. of 9 variables:
$ group : chr "IT" "IT" "IT" "IT" ...
$ Name : chr "name1" "name1" "name2" "name2" ...
$ position: chr "Specialist" "Specialist" "Analyst" "Analyst" ...
$ job : chr "job1" "job2" "job3" "job4" ...
$ dept : chr "IT" "FIN" "FIN" "P&C" ...
$ bucket : chr "Apr-18" "Apr-18" "Apr-18" "Apr-18" ...
$ start : Date, format: "2018-01-02" "2018-01-02" "2018-01-15" "2018-01-22" ...
$ end : Date, format: "2018-04-06" "2018-01-26" "2018-04-20" "2018-04-06" ...
$ hours : int 149 8 109 123 44 124 125 142 70 75 ...
- attr(*, ".internal.selfref")=<externalptr>
And instead of a start and end date, I am trying to transform it so each row has a single date, and a job that takes 3 days has three rows associated with it (needed for the visualization we are doing.)
The code I am using is this:
tidyForecast.df <- setDT(forecast.df)[ , list(group = group
, name = Name
, position = position
, job = job
, dept = dept
, bucket = bucket
, hours = hours
, date = seq(start
, end
, by = "day"))
, by = 1:nrow(forecast.df)]
And the error I am getting when I use this is:
Error in seq.int(0, to0 - from, by) : wrong sign in 'by' argument
I have never encountered this error before, and I used this same format earlier in the code and it worked, so maybe it's something nuanced?
r dataframe
r dataframe
asked Nov 21 '18 at 15:36
Winston UnderwoodWinston Underwood
194
194
give us an example to generate the data.
– Csd
Nov 21 '18 at 17:08
add a comment |
give us an example to generate the data.
– Csd
Nov 21 '18 at 17:08
give us an example to generate the data.
– Csd
Nov 21 '18 at 17:08
give us an example to generate the data.
– Csd
Nov 21 '18 at 17:08
add a comment |
1 Answer
1
active
oldest
votes
Found what was going wrong; there was a single instance in the 1027 observations where the start date was after the end date. This is why it worked in the past, but stopped working when I used it for new data. The "by" argument was negative because the difference between the two dates was negative.
add a comment |
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%2f53415539%2fwhat-does-the-error-wrong-sign-in-by-argument-mean-when-using-the-seq-functi%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Found what was going wrong; there was a single instance in the 1027 observations where the start date was after the end date. This is why it worked in the past, but stopped working when I used it for new data. The "by" argument was negative because the difference between the two dates was negative.
add a comment |
Found what was going wrong; there was a single instance in the 1027 observations where the start date was after the end date. This is why it worked in the past, but stopped working when I used it for new data. The "by" argument was negative because the difference between the two dates was negative.
add a comment |
Found what was going wrong; there was a single instance in the 1027 observations where the start date was after the end date. This is why it worked in the past, but stopped working when I used it for new data. The "by" argument was negative because the difference between the two dates was negative.
Found what was going wrong; there was a single instance in the 1027 observations where the start date was after the end date. This is why it worked in the past, but stopped working when I used it for new data. The "by" argument was negative because the difference between the two dates was negative.
answered Nov 26 '18 at 13:45
Winston UnderwoodWinston Underwood
194
194
add a comment |
add a comment |
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%2f53415539%2fwhat-does-the-error-wrong-sign-in-by-argument-mean-when-using-the-seq-functi%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
give us an example to generate the data.
– Csd
Nov 21 '18 at 17:08