how to find the minimum of several dates in PSPP
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
I'm trying to extract the minimal date out of several date columns in PSPP.
Here is the syntax file I'm using:
***************************************
* [1] READ FORM CSV FILE :: input.csv *
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
***********************************
* [2] DEFINE VARIABLE :: earliest *
***********************************
Variable earliest:
COMPUTE earliest = MIN(startDate1,startDate2,startDate3,startDate4).
EXECUTE.
**************************************
* [3] SAVE TO CSV FILE :: output.csv *
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
When I examine output.csv I see that a new column was indeed created,
but instead of an mm/dd/yyyy pattern it's just some 11 digits numbers.
Any help is very much appreciated, thanks!
date min pspp
add a comment |
I'm trying to extract the minimal date out of several date columns in PSPP.
Here is the syntax file I'm using:
***************************************
* [1] READ FORM CSV FILE :: input.csv *
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
***********************************
* [2] DEFINE VARIABLE :: earliest *
***********************************
Variable earliest:
COMPUTE earliest = MIN(startDate1,startDate2,startDate3,startDate4).
EXECUTE.
**************************************
* [3] SAVE TO CSV FILE :: output.csv *
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
When I examine output.csv I see that a new column was indeed created,
but instead of an mm/dd/yyyy pattern it's just some 11 digits numbers.
Any help is very much appreciated, thanks!
date min pspp
add a comment |
I'm trying to extract the minimal date out of several date columns in PSPP.
Here is the syntax file I'm using:
***************************************
* [1] READ FORM CSV FILE :: input.csv *
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
***********************************
* [2] DEFINE VARIABLE :: earliest *
***********************************
Variable earliest:
COMPUTE earliest = MIN(startDate1,startDate2,startDate3,startDate4).
EXECUTE.
**************************************
* [3] SAVE TO CSV FILE :: output.csv *
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
When I examine output.csv I see that a new column was indeed created,
but instead of an mm/dd/yyyy pattern it's just some 11 digits numbers.
Any help is very much appreciated, thanks!
date min pspp
I'm trying to extract the minimal date out of several date columns in PSPP.
Here is the syntax file I'm using:
***************************************
* [1] READ FORM CSV FILE :: input.csv *
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
***********************************
* [2] DEFINE VARIABLE :: earliest *
***********************************
Variable earliest:
COMPUTE earliest = MIN(startDate1,startDate2,startDate3,startDate4).
EXECUTE.
**************************************
* [3] SAVE TO CSV FILE :: output.csv *
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
When I examine output.csv I see that a new column was indeed created,
but instead of an mm/dd/yyyy pattern it's just some 11 digits numbers.
Any help is very much appreciated, thanks!
date min pspp
date min pspp
asked Nov 22 '18 at 19:18
OrenIshShalomOrenIshShalom
1,163924
1,163924
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Well I finally found it. Not so straight forward, but still working.
The catch is that you have to convert a date to an integer and only then
take the minimum value.
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
*******************************************************************
Variable myDate1:
COMPUTE myDate1=XDATE.YEAR(startDate1)*1000+XDATE.JDAY(startDate1).
EXECUTE.
*******************************************************************
Variable myDate2:
COMPUTE myDate2=XDATE.YEAR(startDate2)*1000+XDATE.JDAY(startDate2).
EXECUTE.
*******************************************************************
Variable myDate3:
COMPUTE myDate3=XDATE.YEAR(startDate3)*1000+XDATE.JDAY(startDate3).
EXECUTE.
*******************************************************************
Variable myDate4:
COMPUTE myDate4=XDATE.YEAR(startDate4)*1000+XDATE.JDAY(startDate4).
EXECUTE.
*******************************************************************
Variable earliest:
COMPUTE earliest = MIN(myDate1,myDate2,myDate3,myDate4).
EXECUTE.
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
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%2f53436980%2fhow-to-find-the-minimum-of-several-dates-in-pspp%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
Well I finally found it. Not so straight forward, but still working.
The catch is that you have to convert a date to an integer and only then
take the minimum value.
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
*******************************************************************
Variable myDate1:
COMPUTE myDate1=XDATE.YEAR(startDate1)*1000+XDATE.JDAY(startDate1).
EXECUTE.
*******************************************************************
Variable myDate2:
COMPUTE myDate2=XDATE.YEAR(startDate2)*1000+XDATE.JDAY(startDate2).
EXECUTE.
*******************************************************************
Variable myDate3:
COMPUTE myDate3=XDATE.YEAR(startDate3)*1000+XDATE.JDAY(startDate3).
EXECUTE.
*******************************************************************
Variable myDate4:
COMPUTE myDate4=XDATE.YEAR(startDate4)*1000+XDATE.JDAY(startDate4).
EXECUTE.
*******************************************************************
Variable earliest:
COMPUTE earliest = MIN(myDate1,myDate2,myDate3,myDate4).
EXECUTE.
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
add a comment |
Well I finally found it. Not so straight forward, but still working.
The catch is that you have to convert a date to an integer and only then
take the minimum value.
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
*******************************************************************
Variable myDate1:
COMPUTE myDate1=XDATE.YEAR(startDate1)*1000+XDATE.JDAY(startDate1).
EXECUTE.
*******************************************************************
Variable myDate2:
COMPUTE myDate2=XDATE.YEAR(startDate2)*1000+XDATE.JDAY(startDate2).
EXECUTE.
*******************************************************************
Variable myDate3:
COMPUTE myDate3=XDATE.YEAR(startDate3)*1000+XDATE.JDAY(startDate3).
EXECUTE.
*******************************************************************
Variable myDate4:
COMPUTE myDate4=XDATE.YEAR(startDate4)*1000+XDATE.JDAY(startDate4).
EXECUTE.
*******************************************************************
Variable earliest:
COMPUTE earliest = MIN(myDate1,myDate2,myDate3,myDate4).
EXECUTE.
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
add a comment |
Well I finally found it. Not so straight forward, but still working.
The catch is that you have to convert a date to an integer and only then
take the minimum value.
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
*******************************************************************
Variable myDate1:
COMPUTE myDate1=XDATE.YEAR(startDate1)*1000+XDATE.JDAY(startDate1).
EXECUTE.
*******************************************************************
Variable myDate2:
COMPUTE myDate2=XDATE.YEAR(startDate2)*1000+XDATE.JDAY(startDate2).
EXECUTE.
*******************************************************************
Variable myDate3:
COMPUTE myDate3=XDATE.YEAR(startDate3)*1000+XDATE.JDAY(startDate3).
EXECUTE.
*******************************************************************
Variable myDate4:
COMPUTE myDate4=XDATE.YEAR(startDate4)*1000+XDATE.JDAY(startDate4).
EXECUTE.
*******************************************************************
Variable earliest:
COMPUTE earliest = MIN(myDate1,myDate2,myDate3,myDate4).
EXECUTE.
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
Well I finally found it. Not so straight forward, but still working.
The catch is that you have to convert a date to an integer and only then
take the minimum value.
***************************************
GET DATA
/TYPE=TXT
/FILE='input.csv'
/FIRSTCASE=2
/VARIABLES=
startDate1 ADATE8
endDate1 ADATE8
startDate2 ADATE8
endDate2 ADATE8
startDate3 ADATE8
endDate3 ADATE8
startDate4 ADATE8
endDate4 ADATE8
.
*******************************************************************
Variable myDate1:
COMPUTE myDate1=XDATE.YEAR(startDate1)*1000+XDATE.JDAY(startDate1).
EXECUTE.
*******************************************************************
Variable myDate2:
COMPUTE myDate2=XDATE.YEAR(startDate2)*1000+XDATE.JDAY(startDate2).
EXECUTE.
*******************************************************************
Variable myDate3:
COMPUTE myDate3=XDATE.YEAR(startDate3)*1000+XDATE.JDAY(startDate3).
EXECUTE.
*******************************************************************
Variable myDate4:
COMPUTE myDate4=XDATE.YEAR(startDate4)*1000+XDATE.JDAY(startDate4).
EXECUTE.
*******************************************************************
Variable earliest:
COMPUTE earliest = MIN(myDate1,myDate2,myDate3,myDate4).
EXECUTE.
**************************************
SAVE TRANSLATE
/OUTFILE='output.csv'
/REPLACE
/TYPE=CSV
answered Nov 23 '18 at 5:43
OrenIshShalomOrenIshShalom
1,163924
1,163924
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%2f53436980%2fhow-to-find-the-minimum-of-several-dates-in-pspp%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