区切り文字に基づいて文字列を分割し、シリーズに変換するPython関数を記述します
’'区切り文字で文字列を分割し、次のようにシリーズに変換した結果
0 apple 1 orange 2 mango 3 kiwi
これを解決するために、以下のアプローチに従います-
ソリューション1
-
2つの引数stringとdelimiterを受け入れる関数split_str()を定義します
-
区切り文字の値の中にs.split()関数を作成し、split_dataとして保存します
split_data = s.split(d)
-
pd.Series()内にsplit_dataを適用して、系列データを生成します。
pd.Series(split_data)
-
最後に、関数を呼び出して結果を返します。
例
理解を深めるために、次のコードを確認してみましょう-
import pandas as pd def split_str(s,d): split_data = s.split(d) print(pd.Series(split_data)) split_str('apple\torange\tmango\tkiwi','\t')
出力
0 apple 1 orange 2 mango 3 kiwi dtype: object
ソリューション2
-
文字列を定義し、それをデータ変数に割り当てます
data = 'apple\torange\tmango\tkiwi'
-
区切り文字を設定=’
-
ラムダ関数を作成し、2つの変数xを文字列として設定し、yを区切り文字として設定し、式をx.split(y)として設定し、split_dataとして保存します
split_data = lambda x,y: x.split(y)
-
データと区切り文字の値を使用して関数を呼び出し、結果リストとして保存します
result = split_data(data,delimiter)
-
結果リストを次のように系列に変換します
pd.Series(result)
例
理解を深めるために、次のコードを確認してみましょう-
import pandas as pd data = 'apple\torange\tmango\tkiwi' delimiter = '\t' split_data = lambda x,y: x.split(y) result = split_data(data,delimiter) print(pd.Series(result))
出力
0 apple 1 orange 2 mango 3 kiwi dtype: object
-
Pythonで区切り文字strによって文字列を分割する方法は?
PythonのStringクラスには、オプションの引数として区切り文字を受け取るsplit()というメソッドがあります。デフォルトの区切り文字は空白です。次のように使用できます: >>> 'aa-ab-ca'.split('-') ['aa', 'ab', 'ca'] >>> 'abc mno rst'.split(' ') ['abc', 'mno', 'rst'] この操作に正規表現を使用するこ
-
キャメルケースをスネークケースに変換するPython関数を書き留めますか?
キャメルケースをスネークケースに変換するためのコードを以下に示します import re def convert(name): s1 = re.sub('(.)([A-Z][a-z]+)', r'\1_\2', name) return re.sub('([a-z0-9])([A-Z])', r'\1_\2', s1).lower() print convert('JavaBeans') print convert('Jav