▶ これからデータ分析の学習を始める方向けに、学習の進め方をまとめています。次の記事を参考にしてください。
はじめに
今回は「集合」を扱います。集合はリストのように複数の要素を持てますが、「要素が重複しない」ように管理されます。ベン図を描くときのデータの指定にもよく使います。集合の作り方・要素の加え方・要素の取り除き方を順に見ていくことにしましょう。
集合
集合を作る
集合は、中括弧{ }にカンマ区切りで要素を入れると作ることができます。
data1={1,5,6,7,2}
print(data1)
print(type(data1))
リストをもとに集合を作るときには、set関数を使います。
list1=[65,34,12,31]
data2=set(list1)
print(data2)
print(type(data2))
空の集合をつくるときにもsetを使います。
data3=set()
print(data3)
print(type(data3))
要素を加える/要素を取り除く
集合に要素を加えるときには、add( )メソッドを使います。
data1.add(100)
print(data1)
逆に、集合から要素を取り除くときには、remove( )メソッドを使います。
data1.remove(100)
print(data1)
集合演算
あらかじめデータを準備しておきましょう。
sample1={1,2,3,4,5,6}
sample2={2,5,6,8,10,12}
和集合
和集合は|(パイプ)演算子を使います。2つの集合の和集合をとると、重複しないすべての要素を含んだ集合が得られます、。
sample1|sample2
積集合
積集合は&演算子を使います。2つの集合の席集合をとると、共通の要素からなる集合を得ることができます。
sample1&sample2
差集合
差集合は、そのまま-演算子を使います。
sample1-sample2
対象差(排他的論理和)
最後に対象差(排他的論理和)です。これは^演算子を用います。この演算は、両方の集合に共通している要素だけを取り除いた、要素の集合を得ることができます、。
sample1^sample2
ベン図
せっかくなのでこれらの集合をベン図で描く方法も見ておきましょう。ベン図は実際のデータ分析の場面でも重宝しますが、まだデータ分析を始めたばかりの方や、可視化はまだ学習していない、という方はこの部分を飛ばしてください。
import matplotlib.pyplot as plt
from matplotlib_venn import venn2
import japanize_matplotlib
%matplotlib inline
venn2(subsets=[sample1,sample2],set_labels=['サンプル1','サンプル2'])
print(sample1)
print(sample2)
まとめ
いかがでしたか?データを扱うときには「要素が重複しない」集合で扱うと便利な時があります。是非、身に着けておきましょう。その際には、最後に扱ったベン図で視覚的に確認するのも便利ですね。
▶ ベン図についての解説を読みたい方はこちらの記事をどうぞ
▶ これからデータ分析の学習を始める方向けに、学習の進め方をまとめています。次の記事を参考にしてください。
コメント