কিভাবে দুটি সেট ছেদ পেতে


17

আমার একটি স্প্রেডশিটে দুটি তালিকা (অনন্য সেট) রয়েছে এবং আমি দুটিটির ছেদ পেতে চাই।

এটি করার কোনও সহজ উপায় আছে?

আমি কী অর্জন করতে চাই তার একটি উদাহরণ এখানে:

তালিকা 1 তালিকা 2 প্রত্যাশিত ফলাফল

 a 1 ই
 খ 2 চ
 সিই      
 d 4      
 EF      
 চ 6      

গুগল শিটের উদাহরণ


আপনি কি আমাদের সাথে একটি ডকটি ভাগ করে নিতে পারেন এবং প্রত্যাশিত ফলাফলটি কিছুটা ব্যাখ্যা করতে পারেন?
জ্যাকব জানু টিনস্ট্রা

উত্তর:


21

জিএএস-এ ঝাঁপিয়ে পড়ার দরকার নেই, স্ট্যান্ডার্ড স্প্রেডশিট ফাংশনগুলি এটিকে সহজে হ্যান্ডেল করে।

আপনার উদাহরণে দয়া করে নিম্নলিখিত কক্ষটিতে একটি পেস্ট করুন

=iferror(filter($A$2:$A, match($A$2:$A, B2:$B , false)), "no match")

ম্যাচ ফাংশন যেখানে একটি মিল খুঁজে পাওয়া যায় ব্যতীত ত্রুটি পূর্ণ দুই রেঞ্জ একটি কার্টিজিয়ান পণ্য তৈরি করে। যখন একটি ম্যাচ এটা 2nd সীমার মধ্যে একটি সূচক ফেরৎ হয় খুঁজে পাওয়া যায়নি।

ফিল্টার ফাংশন দূরে সব বিষ্ঠা এবং আয় শুধুমাত্র সঠিকভাবে ইন্ডেক্স মান ছোঁড়ার।

যদি কোনও মিল না থাকে তবে ইফেরার পরিপাটি ফলাফল পেতে সহায়তা করে।

রেঞ্জগুলি যে কোনও দৈর্ঘ্যের হতে পারে, যেমন $ এ $ 2: $ একটি প্রতিমা দ্বারা নির্দেশিত।


3

এই ছোট স্ক্রিপ্টটি সূত্র হিসাবে দুটি রেঞ্জের তুলনা করবে:

function COMPARE(array1, array2) {
  var array = [];  
  for(i=0; i<array1.length; i++) {
    for(j=0; j<array2.length; j++) {
      if(array1[i][0] == array2[j][0]) {
        // the extra square brackets will make it a 2D array, 
        // aligning it vertically
        array.push([array1[i][0]]);
      }
    }
  }
  return array;
}

আপনার শীটটিতে আপনি নিম্নলিখিত সূত্রটি সেল ডি 2 এ যুক্ত করতে পারেন:

=COMPARE(A2:A7,B2:B7)

সরঞ্জাম মেনু, স্ক্রিপ্ট সম্পাদক এর মাধ্যমে স্ক্রিপ্ট যুক্ত করুন।


আমি সাধারণ পুরানো সূত্রকে স্বাগত জানাই। আমি তাত্ক্ষণিক তাদের সম্পর্কে ভাবতে পারি .....
জ্যাকব জানু টুনস্ট্রা

1
করা উচিত / অবশ্যই করা যায়নি .......
জ্যাকব জানু টুনস্ট্রা

1
ধন্যবাদ, @ জ্যাকব! GDocs এ সূত্রগুলি ব্যবহার করার আমার কাছে কখনই আসল কারণ ছিল না - আমাকে এই বিশ্বে খোলার জন্য ধন্যবাদ!
NoamNelke

3

আপনি যদি দুটি রেঞ্জের বিয়োগ (সীমা 1 এর উপাদানগুলি যা 2 ব্যাপ্তিতে নেই) কীভাবে সন্ধান করতে চান তবে:

List 1  List 2  Expected result

 a       1        a
 b       2        b
 c       e        c
 d       4        d
 e       f      
 f       6    

আপনার জন্য এখানে একটি সূত্র রয়েছে:

=iferror(filter($A$2:$A, iserror(match($A$2:$A, B2:$B , false))), "no match")

0

এই ছোট স্ক্রিপ্টটি সূত্র হিসাবে দুটি রেঞ্জের তুলনা করবে:

function intersect(array1, array2) {
  var array = [];  
  for(i=0; i<array1.length; i++) {
    for(j=0; j<array2.length; j++) {
      if(array1[i][0] == array2[j][0]) {
        // the extra square brackets will make it a 2D array, 
        // aligning it vertically
        array.push([array1[i][0]]);
      }
    }
  }
  return array;
}

অতিরিক্ত:

function extersect(array1, array2) {
  var array = [];  
  var tmp = true;
  for(i=0; i<array1.length; i++) {
    for(j=0; j<array2.length; j++) {
      if(array1[i][0] == array2[j][0]) {
        // the extra square brackets will make it a 2D array, 
        // aligning it vertically
        tmp = false;
      }      
    }
    if(tmp == true) 
    {
      array.push([array1[i][0]]);
    }
    tmp = true;
  }
  return array;
}

আপনার শীটটিতে আপনি নিম্নলিখিত সূত্রটি সেল ডি 2 এ যুক্ত করতে পারেন:

=intersect(A2:A7,B2:B7)

সরঞ্জাম মেনু, স্ক্রিপ্ট সম্পাদক এর মাধ্যমে স্ক্রিপ্ট যুক্ত করুন।

ছেদ করুন (A2: A7, B2: B7) ফলাফলগুলি প্রদান করে যা উভয় অ্যারে অ্যারে 1, অ্যারে 2 এ উপস্থিত রয়েছে।

= বহির্মুখী (A2: A7, B2: B7) অ্যারে 1 এর মানগুলি প্রদান করে যা B2: B7 পরিসরে উপস্থিত নেই

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