パンダの列インデックスに基づいてcsvファイルのインポート中にデータ型を定義する

聖なる

300以上の列を持つcsvファイルをインポートする必要があります。これらの列のうち、最初の列のみをカテゴリとして指定する必要があり、残りの列は32以下でフロートする必要があります。列インデックスを介して列のデータ型を指定できると思います。私の質問は、列インデックスに基づいてデータ型を指定するための最適な方法は何ですか?

Col_A   Col_B   Col_C   Col_D
001       1       2      1.2
002       2       3      3.5
003       3       4.5      7
004       4       6.5     10

私が試したコードは次のとおりです。

df = pd.read_csv(path, low_memory=False,  
             dtype={'Col_A': 'category', [2:]: np.float32)}
パンギュテン

2回読み取り、1回目はすべての列を取得し、2回目は読み取り時にdtypeを指定します。

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))
df.to_csv('tmp.csv',index=False)

path = 'tmp.csv'
df =pd.read_csv(path)
type_dict = {}

for key in df.columns:
    if key == 'A':
        type_dict[key]='category'
    else:
        type_dict[key]=np.float32
df = pd.read_csv(path,dtype=type_dict)
print(df.dtypes)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

テキストフィールドに基づいてパンダデータフレーム内のCSVファイルをマージする

分類Dev

インデックス付き日時フィルターに基づいて列の値を設定する

分類Dev

列の内部インデックスに基づいてパンダのデータフレームをグループ化する

分類Dev

パンダの行インデックスとセル値に基づいてデータを選択する

分類Dev

特定のインデックスに基づいてマルチインデックスパンダデータフレームを並べ替える

分類Dev

パンダのインデックス値に基づいてデータフレームを複数のデータフレームに分離する

分類Dev

パンダグループ内の相対インデックスから配列のインデックスに基づいて値を選択する方法

分類Dev

列インデックスに基づいてデータフレーム列の名前を変更する

分類Dev

列の値に基づいてタスクのインデックスを再作成するパンダ

分類Dev

マルチインデックスパンダデータフレームに基づいてmatplotlibでエラーバーをプロットする

分類Dev

JSONファイルデータに基づいてスパンクラスのタイトルを変更する

分類Dev

パンダで、2セットのインデックスに基づいて、2つのデータフレームからの値を連結します

分類Dev

タイムスタンプに基づいてディレクトリ内のcsvファイルをマージする

分類Dev

インデックスのリストに基づいてパンダ列の値を変更する

分類Dev

パンダの別の列のインデックスに基づいて列からデータを取得する

分類Dev

パンダのインデックスのリストに基づいて、文字列のデータフレームを複数の列に分割するにはどうすればよいですか?

分類Dev

インデックスと列に基づいて2つのパンダデータフレームを乗算します

分類Dev

パンダ:マルチインデックスデータフレームのサブセットの条件に基づいて値を設定する適切な方法

分類Dev

csvファイルのスライスインデックスに基づいてスライスされた文字列を連結する

分類Dev

インデックスと日付に基づいてパンダのデータフレームをマージする

分類Dev

モデルプロパティに基づいてホストコンポーネントのスタイルを設定する

分類Dev

テキストファイルの値に基づいてデータ型を動的に割り当てるスクリプトコンポーネントを作成するには

分類Dev

日時列に基づいてパンダのデータフレームをスライスします

分類Dev

別のデータフレームのインデックスに基づいて、データフレームからインデックスを保持する

分類Dev

共通の列とインデックスに基づいてマージするパンダ

分類Dev

インデックスのリストに基づいて、異なるデータフレームを作成し、それを異なるcsvに出力します

分類Dev

両方のインデックスに基づいて2つのマルチインデックスデータフレームを減算する

分類Dev

列に基づくパンダデータフレームのカウンター/インデックス

分類Dev

パンダのインデックスの時間値に基づいて行の値を設定する

Related 関連記事

  1. 1

    テキストフィールドに基づいてパンダデータフレーム内のCSVファイルをマージする

  2. 2

    インデックス付き日時フィルターに基づいて列の値を設定する

  3. 3

    列の内部インデックスに基づいてパンダのデータフレームをグループ化する

  4. 4

    パンダの行インデックスとセル値に基づいてデータを選択する

  5. 5

    特定のインデックスに基づいてマルチインデックスパンダデータフレームを並べ替える

  6. 6

    パンダのインデックス値に基づいてデータフレームを複数のデータフレームに分離する

  7. 7

    パンダグループ内の相対インデックスから配列のインデックスに基づいて値を選択する方法

  8. 8

    列インデックスに基づいてデータフレーム列の名前を変更する

  9. 9

    列の値に基づいてタスクのインデックスを再作成するパンダ

  10. 10

    マルチインデックスパンダデータフレームに基づいてmatplotlibでエラーバーをプロットする

  11. 11

    JSONファイルデータに基づいてスパンクラスのタイトルを変更する

  12. 12

    パンダで、2セットのインデックスに基づいて、2つのデータフレームからの値を連結します

  13. 13

    タイムスタンプに基づいてディレクトリ内のcsvファイルをマージする

  14. 14

    インデックスのリストに基づいてパンダ列の値を変更する

  15. 15

    パンダの別の列のインデックスに基づいて列からデータを取得する

  16. 16

    パンダのインデックスのリストに基づいて、文字列のデータフレームを複数の列に分割するにはどうすればよいですか?

  17. 17

    インデックスと列に基づいて2つのパンダデータフレームを乗算します

  18. 18

    パンダ:マルチインデックスデータフレームのサブセットの条件に基づいて値を設定する適切な方法

  19. 19

    csvファイルのスライスインデックスに基づいてスライスされた文字列を連結する

  20. 20

    インデックスと日付に基づいてパンダのデータフレームをマージする

  21. 21

    モデルプロパティに基づいてホストコンポーネントのスタイルを設定する

  22. 22

    テキストファイルの値に基づいてデータ型を動的に割り当てるスクリプトコンポーネントを作成するには

  23. 23

    日時列に基づいてパンダのデータフレームをスライスします

  24. 24

    別のデータフレームのインデックスに基づいて、データフレームからインデックスを保持する

  25. 25

    共通の列とインデックスに基づいてマージするパンダ

  26. 26

    インデックスのリストに基づいて、異なるデータフレームを作成し、それを異なるcsvに出力します

  27. 27

    両方のインデックスに基づいて2つのマルチインデックスデータフレームを減算する

  28. 28

    列に基づくパンダデータフレームのカウンター/インデックス

  29. 29

    パンダのインデックスの時間値に基づいて行の値を設定する

ホットタグ

アーカイブ