আর-তে দুটি তালিকা কীভাবে একত্রিত করা যায়


111

আমার দুটি তালিকা রয়েছে:

l1 = list(2, 3)
l2 = list(4)

আমি একটি তৃতীয় তালিকা চাই:

list(2, 3, 4).

আমি কীভাবে এটি সহজ উপায়ে করতে পারি। যদিও আমি এটি লুপের জন্য করতে পারি, তবে আমি এক লাইনারের উত্তর, অথবা একটি অন্তর্নির্মিত পদ্ধতি আশা করছি।

আসলে, আমার একটি তালিকা আছে:
list(list(2, 3), list(2, 4), list(3, 5), list(3, 7), list(5, 6), list(5, 7), list(6, 7)).
কম্পিউটিং অন করার পরে list(2, 3)এবং list(2, 4), আমি চাই list(2, 3, 4)


7
c(l1, l2)? আপনি যদি অন্য কিছু আশা করেন তবে আপনি কি দয়া করে কিছুটা বিশদ বর্ণনা করতে পারেন এবং / অথবা আপনার তালিকা এবং পছন্দসই আউটপুট ভাগ করে নিতে পারেন?
ভিনসেন্ট Bonhomme

এটি একই ধরণের যা আমি উপরে সরবরাহ করেছি of
রোহিত সিং

1
আমার একটি তালিকা রয়েছে: তালিকা (তালিকা (2, 3), তালিকা (2, 4), তালিকা (3, 5), তালিকা (3, 7), তালিকা (5, 6), তালিকা (5, 7), তালিকা (6, 7))। তালিকার (2, 3) এবং তালিকার (2, 4) গণনা করার পরে, আমি তালিকাটি চাই (2, 3, 4)। এটাই.
রোহিত সিং

1
@ ভিনসেন্ট এখানে প্রথম পেয়েছে। এটা তার উত্তর।
ধনী স্ক্রিভেন

2
আপনার সম্পাদনার থেকে: যদি আপনি list(2, 3)এবং list(2, 4),চান list(2, 3, 4), আপনি চাইতে পারেনunique(c(l1, l2))
user20650

উত্তর:


143

c তালিকায় ব্যবহার করা যেতে পারে (এবং কেবল ভেক্টরগুলিতে নয়):

# you have
l1 = list(2, 3)
l2 = list(4)

# you want
list(2, 3, 4)
[[1]]
[1] 2

[[2]]
[1] 3

[[3]]
[1] 4

# you can do
c(l1, l2)
[[1]]
[1] 2

[[2]]
[1] 3

[[3]]
[1] 4

আপনার যদি তালিকার একটি তালিকা থাকে তবে আপনি এটি (সম্ভবত) আরও স্বাচ্ছন্দ্যে করতে পারেন do.call, উদাহরণস্বরূপ:

do.call(c, list(l1, l2))

53

আমরা ব্যবহার করতে পারি append

append(l1, l2)

এটি নির্দিষ্ট স্থানে উপাদান inোকাতে যুক্তিও রয়েছে।


@ জাচ pasteএবং paste0একটি বড় স্ট্রিংয়ের সাথে স্ট্রিংগুলিতে যোগদান করতে হবে। আমি পরিষ্কারভাবে বুঝতে পারিনি বলে আপনি কি সমস্যাটিকে আরও কিছুটা বর্ণনা করতে পারেন?
আকরুন

2
@ অ্যাকরুন দুটিরও বেশি তালিকার সিনট্যাক্সটি কীভাবে রয়েছে?
ফরোসি

3
@ ফ্রোসি আপনি করতে পারেন c(l1, l2, l3), append()এটি কেবল একটি মোড়কের জন্য c()তবে কেবল দুটি যুক্তি লাগে takes
সিন্ড্রি_বলদুর

0

আমি একই কাজটি করতে চাইছিলাম, তবে কেবল একটি স্ট্রিংয়ের একটি অ্যারের হিসাবে তালিকাটি সংরক্ষণ করার জন্য আমি একটি নতুন কোড লিখেছিলাম, যা আমি যা পড়ছি তা সবচেয়ে কার্যকর নাও হতে পারে তবে আমার যা করার দরকার ছিল তার জন্য কাজ করেছি :

combineListsAsOne <-function(list1, list2){
  n <- c()
  for(x in list1){
    n<-c(n, x)
  }
  for(y in list2){
    n<-c(n, y)
  }
  return(n)
}

এটি কেবলমাত্র একটি নতুন তালিকা তৈরি করে এবং একটি সরবরাহ করার জন্য সরবরাহিত দুটি তালিকা থেকে আইটেম যুক্ত করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.