ruby - help need to convert an array to a specific type of array of arrays, duplicating the keys as [key,...
up vote
-1
down vote
favorite
I want to convert and array into a specific type of array of arrays.
array = ["Project", "Publication"]
into
array_of_arrays =[["Project", "Project"], ["Publication", "Publication"] ]
The array is not just limited to size two. Its a growing list , so looking for some function to convert it to array_of_arrays.
Appreciate any help.
ruby ruby-on-rails-3
add a comment |
up vote
-1
down vote
favorite
I want to convert and array into a specific type of array of arrays.
array = ["Project", "Publication"]
into
array_of_arrays =[["Project", "Project"], ["Publication", "Publication"] ]
The array is not just limited to size two. Its a growing list , so looking for some function to convert it to array_of_arrays.
Appreciate any help.
ruby ruby-on-rails-3
1
You can format your code by indenting it four spaces or by surrounding it with backticks. Typically, use the former for blocks of code, the latter for isolated bits of code within sentences. Also, if you select your code and click on{}
it will all be indented four spaces. This is a pure-Ruby question so you should not have the Rails tag. Lastly, in Ruby we speak of methods (OOP-like), not functions.
– Cary Swoveland
Nov 15 at 17:47
add a comment |
up vote
-1
down vote
favorite
up vote
-1
down vote
favorite
I want to convert and array into a specific type of array of arrays.
array = ["Project", "Publication"]
into
array_of_arrays =[["Project", "Project"], ["Publication", "Publication"] ]
The array is not just limited to size two. Its a growing list , so looking for some function to convert it to array_of_arrays.
Appreciate any help.
ruby ruby-on-rails-3
I want to convert and array into a specific type of array of arrays.
array = ["Project", "Publication"]
into
array_of_arrays =[["Project", "Project"], ["Publication", "Publication"] ]
The array is not just limited to size two. Its a growing list , so looking for some function to convert it to array_of_arrays.
Appreciate any help.
ruby ruby-on-rails-3
ruby ruby-on-rails-3
asked Nov 15 at 16:51
user3586935
1
1
1
You can format your code by indenting it four spaces or by surrounding it with backticks. Typically, use the former for blocks of code, the latter for isolated bits of code within sentences. Also, if you select your code and click on{}
it will all be indented four spaces. This is a pure-Ruby question so you should not have the Rails tag. Lastly, in Ruby we speak of methods (OOP-like), not functions.
– Cary Swoveland
Nov 15 at 17:47
add a comment |
1
You can format your code by indenting it four spaces or by surrounding it with backticks. Typically, use the former for blocks of code, the latter for isolated bits of code within sentences. Also, if you select your code and click on{}
it will all be indented four spaces. This is a pure-Ruby question so you should not have the Rails tag. Lastly, in Ruby we speak of methods (OOP-like), not functions.
– Cary Swoveland
Nov 15 at 17:47
1
1
You can format your code by indenting it four spaces or by surrounding it with backticks. Typically, use the former for blocks of code, the latter for isolated bits of code within sentences. Also, if you select your code and click on
{}
it will all be indented four spaces. This is a pure-Ruby question so you should not have the Rails tag. Lastly, in Ruby we speak of methods (OOP-like), not functions.– Cary Swoveland
Nov 15 at 17:47
You can format your code by indenting it four spaces or by surrounding it with backticks. Typically, use the former for blocks of code, the latter for isolated bits of code within sentences. Also, if you select your code and click on
{}
it will all be indented four spaces. This is a pure-Ruby question so you should not have the Rails tag. Lastly, in Ruby we speak of methods (OOP-like), not functions.– Cary Swoveland
Nov 15 at 17:47
add a comment |
2 Answers
2
active
oldest
votes
up vote
2
down vote
def replicate(arr, n)
arr.map { |e| [e]*n }
end
replicate(["Project", "Publication"], 2)
#=> [["Project", "Project"], ["Publication", "Publication"]]
replicate(["Project", "Publication"], 3)
#=> [["Project", "Project", "Project"], ["Publication", "Publication", "Publication"]]
replicate([["ProjectA", "ProjectB"], "Publication"], 2)
#=> [[["ProjectA", "ProjectB"], ["ProjectA", "ProjectB"]], ["Publication", "Publication"]
add a comment |
up vote
0
down vote
This is something map can handle quite easily.
a = ["Project", "Publication"]
a.map{|x| [x,x]}
#=> [["Project", "Project"], ["Publication", "Publication"]]
a.zip(a)
will do the same thing :)
– engineersmnky
Nov 15 at 17:08
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',
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%2f53324298%2fruby-help-need-to-convert-an-array-to-a-specific-type-of-array-of-arrays-dupl%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
2
down vote
def replicate(arr, n)
arr.map { |e| [e]*n }
end
replicate(["Project", "Publication"], 2)
#=> [["Project", "Project"], ["Publication", "Publication"]]
replicate(["Project", "Publication"], 3)
#=> [["Project", "Project", "Project"], ["Publication", "Publication", "Publication"]]
replicate([["ProjectA", "ProjectB"], "Publication"], 2)
#=> [[["ProjectA", "ProjectB"], ["ProjectA", "ProjectB"]], ["Publication", "Publication"]
add a comment |
up vote
2
down vote
def replicate(arr, n)
arr.map { |e| [e]*n }
end
replicate(["Project", "Publication"], 2)
#=> [["Project", "Project"], ["Publication", "Publication"]]
replicate(["Project", "Publication"], 3)
#=> [["Project", "Project", "Project"], ["Publication", "Publication", "Publication"]]
replicate([["ProjectA", "ProjectB"], "Publication"], 2)
#=> [[["ProjectA", "ProjectB"], ["ProjectA", "ProjectB"]], ["Publication", "Publication"]
add a comment |
up vote
2
down vote
up vote
2
down vote
def replicate(arr, n)
arr.map { |e| [e]*n }
end
replicate(["Project", "Publication"], 2)
#=> [["Project", "Project"], ["Publication", "Publication"]]
replicate(["Project", "Publication"], 3)
#=> [["Project", "Project", "Project"], ["Publication", "Publication", "Publication"]]
replicate([["ProjectA", "ProjectB"], "Publication"], 2)
#=> [[["ProjectA", "ProjectB"], ["ProjectA", "ProjectB"]], ["Publication", "Publication"]
def replicate(arr, n)
arr.map { |e| [e]*n }
end
replicate(["Project", "Publication"], 2)
#=> [["Project", "Project"], ["Publication", "Publication"]]
replicate(["Project", "Publication"], 3)
#=> [["Project", "Project", "Project"], ["Publication", "Publication", "Publication"]]
replicate([["ProjectA", "ProjectB"], "Publication"], 2)
#=> [[["ProjectA", "ProjectB"], ["ProjectA", "ProjectB"]], ["Publication", "Publication"]
answered Nov 15 at 17:41
Cary Swoveland
67k53865
67k53865
add a comment |
add a comment |
up vote
0
down vote
This is something map can handle quite easily.
a = ["Project", "Publication"]
a.map{|x| [x,x]}
#=> [["Project", "Project"], ["Publication", "Publication"]]
a.zip(a)
will do the same thing :)
– engineersmnky
Nov 15 at 17:08
add a comment |
up vote
0
down vote
This is something map can handle quite easily.
a = ["Project", "Publication"]
a.map{|x| [x,x]}
#=> [["Project", "Project"], ["Publication", "Publication"]]
a.zip(a)
will do the same thing :)
– engineersmnky
Nov 15 at 17:08
add a comment |
up vote
0
down vote
up vote
0
down vote
This is something map can handle quite easily.
a = ["Project", "Publication"]
a.map{|x| [x,x]}
#=> [["Project", "Project"], ["Publication", "Publication"]]
This is something map can handle quite easily.
a = ["Project", "Publication"]
a.map{|x| [x,x]}
#=> [["Project", "Project"], ["Publication", "Publication"]]
edited Nov 15 at 17:08
engineersmnky
13.1k12137
13.1k12137
answered Nov 15 at 17:03
Jeff Price
2,7991723
2,7991723
a.zip(a)
will do the same thing :)
– engineersmnky
Nov 15 at 17:08
add a comment |
a.zip(a)
will do the same thing :)
– engineersmnky
Nov 15 at 17:08
a.zip(a)
will do the same thing :)– engineersmnky
Nov 15 at 17:08
a.zip(a)
will do the same thing :)– engineersmnky
Nov 15 at 17:08
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.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- 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%2f53324298%2fruby-help-need-to-convert-an-array-to-a-specific-type-of-array-of-arrays-dupl%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
1
You can format your code by indenting it four spaces or by surrounding it with backticks. Typically, use the former for blocks of code, the latter for isolated bits of code within sentences. Also, if you select your code and click on
{}
it will all be indented four spaces. This is a pure-Ruby question so you should not have the Rails tag. Lastly, in Ruby we speak of methods (OOP-like), not functions.– Cary Swoveland
Nov 15 at 17:47