Pythonでリストをリストのリスト(ネストされたリスト)に変換する3つの方法
データ分析では、リストの各要素を個別のサブリストに変換したいという場面によく遭遇します。本記事では、通常のリストを入力として受け取り、各要素がサブリストとなる「リストのリスト」へ変換する方法を、3つの異なるアプローチとともにわかりやすく解説します。
1. forループ(リスト内包表記)を使う方法
最もシンプルで直感的な方法です。リスト内包表記を使えば、各要素を1行ずつ読み取りながら、それぞれをリストとして新しいリストに格納できます。コードも短く、可読性も高いのが特徴です。
コード例
Alist = ['Mon','Tue','Wed','Thu','Fri']
# 元のリスト
print("Given list: ",Alist)
# 各要素をリスト化
NewList= [[x] for x in Alist]
# 表示
print("The new lists of lists: ",NewList)出力
上記のコードを実行すると、以下のような結果が得られます。
Given list: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] The new lists of lists: [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]
2. split関数を使う方法
この方法では、split関数を使用して各要素を抽出し、抽出した要素をリストとして、あらかじめ用意しておいた空のリストにappendメソッドで追加していきます。カンマ区切りの文字列データなどを処理する際に特に便利なアプローチです。
コード例
Alist = ['Mon','Tue','Wed','Thu','Fri']
# 元のリスト
print("Given list: ",Alist)
NewList= []
# splitを使用
for x in Alist:
x = x.split(',')
NewList.append(x)
# 表示
print("The new lists of lists: ",NewList)出力
上記のコードを実行すると、以下のような結果が得られます。
Given list: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] The new lists of lists: [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]
3. map関数を使う方法
map関数は、同じ処理を一連の要素に対して繰り返し適用するための組み込み関数です。ここではラムダ関数を使って元のリストの各要素をリストに変換する処理を定義し、map関数で一括適用します。最後にlist()で結果をリスト化すれば、リストのリストが完成します。関数型プログラミングらしいスタイルで、簡潔に書ける点が魅力です。
コード例
Alist = ['Mon','Tue','Wed','Thu','Fri']
# 元のリスト
print("Given list: ",Alist)
# mapを使用
NewList= list(map(lambda x:[x], Alist))
# 表示
print("The new lists of lists: ",NewList)出力
上記のコードを実行すると、以下のような結果が得られます。
Given list: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] The new lists of lists: [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]
-
Pythonでリストをタプルに変換する方法
Pythonでは、リストをタプルに変換するのは非常に簡単です。組み込み関数である tuple() 関数にリストを引数として渡すだけで、変換することができます。サンプルコードmy_list = [1, 2, 3] my_tuple = tuple(my_list) print(my_tuple)出力結果上記のコードを実行すると、以下のような出力が得られます。(1, 2, 3)解説tuple() 関数は、リストだけでなく文字列や辞書などのイテラブル(反復可能なオブジェクト)もタプルに変換できます。タプルはリストと異なりイミュータブル(変更不可)であるため、データを誤って書き換えたくない場合や、辞書
-
Pythonリスト入門:作成から操作、削除まで徹底解説
このチュートリアルでは、Pythonのリスト(List)について学びます。リストの作成方法、要素へのアクセス、要素の追加・削除、リスト自体の削除など、基本的な操作を一つずつ丁寧に解説していきます。 Pythonでは、リストは角括弧 [] を使って構築し、各要素はカンマ , で区切って記述します。 Pythonのリストは、異なる型のオブジェクトを混在させて格納できるのが特徴です。すべて文字列である必要も、整数である必要もありません。例えば、以下のように複数の型が混ざったリストを作成できます。mixedTypesList = [a, True, 1, 1.0] リストの作成方法 リストは、角括弧