How to merge csv files onto a single file on condition and adding file name as a column?
I have multiple csv files on folder. The column headers are different but column datas are same.
The number inside the bracket is actual column name. Item(67) 67 is column name
So ignore the string Item and only consider the int inside () and perform the operation.
Sample Files: https://drive.google.com/open?id=1jNb9Q7uFCJcAatjqQggixVIYmbSjaWRC-ydlu1WxvIQ
Explanation:
The files on the drive should be appended together. On Condition based on the column names. If the integer on condition matches with the column name(integer inside () of the column name) then it should be placed on that column. Please check the expected output.
Files
File 1
ID Item(67) Item(89) Item(91) Item(100)
1 56 78 98 101
2 91 100 121
File 2
ID Item(96) Item(58) Item(67) Item(100)
3 101 102 103 104
4 112 113 117 119
Condition
File Price1 Price2 Price3 Price4 Price5
File1 67 89 91 100
File2 96 58 67 100
Expected Output:
File ID Price1 Price2 Price3 Price4 Price5
File1 1 56 78 98 101
File1 2 91 100 121
File2 3 101 102 103 104
File2 4 112 113 117 119
linux command-line terminal osx
New contributor
add a comment |
I have multiple csv files on folder. The column headers are different but column datas are same.
The number inside the bracket is actual column name. Item(67) 67 is column name
So ignore the string Item and only consider the int inside () and perform the operation.
Sample Files: https://drive.google.com/open?id=1jNb9Q7uFCJcAatjqQggixVIYmbSjaWRC-ydlu1WxvIQ
Explanation:
The files on the drive should be appended together. On Condition based on the column names. If the integer on condition matches with the column name(integer inside () of the column name) then it should be placed on that column. Please check the expected output.
Files
File 1
ID Item(67) Item(89) Item(91) Item(100)
1 56 78 98 101
2 91 100 121
File 2
ID Item(96) Item(58) Item(67) Item(100)
3 101 102 103 104
4 112 113 117 119
Condition
File Price1 Price2 Price3 Price4 Price5
File1 67 89 91 100
File2 96 58 67 100
Expected Output:
File ID Price1 Price2 Price3 Price4 Price5
File1 1 56 78 98 101
File1 2 91 100 121
File2 3 101 102 103 104
File2 4 112 113 117 119
linux command-line terminal osx
New contributor
add a comment |
I have multiple csv files on folder. The column headers are different but column datas are same.
The number inside the bracket is actual column name. Item(67) 67 is column name
So ignore the string Item and only consider the int inside () and perform the operation.
Sample Files: https://drive.google.com/open?id=1jNb9Q7uFCJcAatjqQggixVIYmbSjaWRC-ydlu1WxvIQ
Explanation:
The files on the drive should be appended together. On Condition based on the column names. If the integer on condition matches with the column name(integer inside () of the column name) then it should be placed on that column. Please check the expected output.
Files
File 1
ID Item(67) Item(89) Item(91) Item(100)
1 56 78 98 101
2 91 100 121
File 2
ID Item(96) Item(58) Item(67) Item(100)
3 101 102 103 104
4 112 113 117 119
Condition
File Price1 Price2 Price3 Price4 Price5
File1 67 89 91 100
File2 96 58 67 100
Expected Output:
File ID Price1 Price2 Price3 Price4 Price5
File1 1 56 78 98 101
File1 2 91 100 121
File2 3 101 102 103 104
File2 4 112 113 117 119
linux command-line terminal osx
New contributor
I have multiple csv files on folder. The column headers are different but column datas are same.
The number inside the bracket is actual column name. Item(67) 67 is column name
So ignore the string Item and only consider the int inside () and perform the operation.
Sample Files: https://drive.google.com/open?id=1jNb9Q7uFCJcAatjqQggixVIYmbSjaWRC-ydlu1WxvIQ
Explanation:
The files on the drive should be appended together. On Condition based on the column names. If the integer on condition matches with the column name(integer inside () of the column name) then it should be placed on that column. Please check the expected output.
Files
File 1
ID Item(67) Item(89) Item(91) Item(100)
1 56 78 98 101
2 91 100 121
File 2
ID Item(96) Item(58) Item(67) Item(100)
3 101 102 103 104
4 112 113 117 119
Condition
File Price1 Price2 Price3 Price4 Price5
File1 67 89 91 100
File2 96 58 67 100
Expected Output:
File ID Price1 Price2 Price3 Price4 Price5
File1 1 56 78 98 101
File1 2 91 100 121
File2 3 101 102 103 104
File2 4 112 113 117 119
linux command-line terminal osx
linux command-line terminal osx
New contributor
New contributor
New contributor
asked 1 min ago
pandapanda
1
1
New contributor
New contributor
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
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: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
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
});
}
});
panda is a new contributor. Be nice, and check out our Code of Conduct.
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%2funix.stackexchange.com%2fquestions%2f504404%2fhow-to-merge-csv-files-onto-a-single-file-on-condition-and-adding-file-name-as-a%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
panda is a new contributor. Be nice, and check out our Code of Conduct.
panda is a new contributor. Be nice, and check out our Code of Conduct.
panda is a new contributor. Be nice, and check out our Code of Conduct.
panda is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- 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%2funix.stackexchange.com%2fquestions%2f504404%2fhow-to-merge-csv-files-onto-a-single-file-on-condition-and-adding-file-name-as-a%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