特定のパターンを使用したテキスト ファイルからの Pandas DataFrame の作成
問題ステートメント:
目標は、次の構造を持つテキスト ファイルから Pandas DataFrame を作成することです:
Alabama[edit] Auburn (Auburn University)[1] Florence (University of North Alabama) Jacksonville (Jacksonville State University)[2] Livingston (University of West Alabama)[2] Montevallo (University of Montevallo)[2] Troy (Troy University)[2] Tuscaloosa (University of Alabama, Stillman College, Shelton State)[3][4] Tuskegee (Tuskegee University)[5] Alaska[edit] Fairbanks (University of Alaska Fairbanks)[2] Arizona[edit] Flagstaff (Northern Arizona University)[6] Tempe (Arizona State University) Tucson (University of Arizona) Arkansas[edit]
ここで、「[edit]」の付いた行は州を示し、「[number]」の付いた行は地域を示します。 DataFrame は、これらのパターンに基づいてデータを分割し、地域名ごとに州名を繰り返す必要があります。
解決策:
これを実現するには、次の手順に従うことができます。 :
df = pd.read_csv('filename.txt', sep=";", names=['Region Name'])
df.insert(0, 'State', df['Region Name'].str.extract('(.*)\[edit\]', expand=False).ffill())
df['Region Name'] = df['Region Name'].str.replace(r' \(.+$', '')
df = df[~df['Region Name'].str.contains('\[edit\]')].reset_index(drop=True) print (df)
出力例:
出力 DataFrame は次のようになります:
State Region Name 0 Alabama Auburn 1 Alabama Florence 2 Alabama Jacksonville 3 Alabama Livingston 4 Alabama Montevallo 5 Alabama Troy 6 Alabama Tuscaloosa 7 Alabama Tuskegee 8 Alaska Fairbanks 9 Arizona Flagstaff 10 Arizona Tempe 11 Arizona Tucson
以上が特定のパターンを含むテキスト ファイルから Pandas DataFrame を作成するにはどうすればよいでしょうか。州は \'[edit]\' で示され、領域は \'[number]\' で示されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。