

読み込みたいcsvファイルはpyとともにCドライブの下に保存されています。

[code]

    #import sys
    #print(sys.version)
    
    #テストプログラム
    import os
    # カレントフォルダを変更
    os.chdir(r"C:/Python/csv_diff")
    
    #ディレクトリ内のファイルを表示
    print(os.listdir())
    
    #import time
    
    import pandas as pd
    import numpy as np
    
    # CSVファイルの読み込み
    
    #col_names = ['c{0:02d}'.format(i) for i in range(100)]
    
    df_1 = pd.read_csv('test1.csv')
    #df_2 = pd.read_csv('test2.csv')
    
    #df_1 = pd.read_csv('test1.csv', encoding=&quot;shift-jis&quot;, names = col_names)
    
    # CSVファイルの出力
    
    print(df_1)
    #print(df_2)
    #print(df_1 == df_2)
    
    #print(csv_input.size)
    
[/code]


CC BY-SA 4.0
2022-10-20T07:53:14.703
91691
2022-10-24T10:19:38.700
2022-10-22T06:29:48.687
3060
54927
question
python
CSVファイルの出力時、pandasがファイルパスを読み込めない


質問が, CSVファイル読み込みたいのに見つからない … のだとして, その回答です。

以下はカレントディレクトリから探す手順  
Home ディレクリからなら `csvf = Path.home()/ 'test1.csv'` で  
ディレクリのパスが分かっているのなら `Path('./〜')` の `'.'`を書き換えて試してみるとよいでしょう

[code]

    from pathlib import Path
    
    # この例はカレントディレクトリから探す方法
    csvf = Path('./test1.csv')
    if not csvf.exists():
        print(f'search: {csvf.parent}')
        for csvf in csvf.parent.glob('**/test*.csv'):
            print(f'hit: {csvf}')
            break
    
    import pandas as pd
    df = pd.read_csv(csvf)
    display(df)
    
[/code]

* * *

#### 追記

(改訂)  
回答のコメントに投稿されたスクリプト(すでに移行済み)が, 質問時のものか, (何か)試してる最中なのか,
(回答を元に？)結論がでた・ディレクトリが見つかったのか … がこちらからは判断できません。

なので, `C:/Python/csv_diff` 以下に存在するかも知れない場合の対処。  
上記スクリプトの書き換える部分を以下のようにすると確認可能  
(`Path` は `WindowsPath` 返すはずだが 環境無いので動作未確認)

[code]

    csvf = Path('C:/Python/csv_diff/test1.csv')
    
[/code]


CC BY-SA 4.0
2022-10-21T07:17:25.243
91721
2022-10-23T06:32:44.587
2022-10-23T06:32:44.587
43025
43025
91691
answer


質問された方がコメント欄に書かれていた「CSVを比較し，差があるところのみを出力する」に興味を持ち，自分なりに作ってみました。  
テスト用CSV作成コード，比較コード，比較出力を順に示します。なお，このまま試す場合はカレントに 'csv' ディレクトリを用意ください。

[code]

    import os, sys
    import numpy as np
    import pandas as pd
    
    csv_dir = './csv/'  # a trailing '/' required
    csv1 = csv_dir + 'test1.csv'
    csv2 = csv_dir + 'test2.csv'
    
    if not os.path.isdir(csv_dir):
        print(f'error: {csv_dir} does not exist.')
        sys.exit(1)
    
    n, m = 5, 12
    nm = n * m
    ary1 = np.arange(1, nm + 1)
    np.random.seed(7)
    ary2 = ary1 + (np.random.rand(nm) + 0.1).astype(int)
    df1 = pd.DataFrame(ary1.reshape(n, m))
    df2 = pd.DataFrame(ary2.reshape(n, m))
    
    df1.to_csv(csv1, header=False, index=False)
    df2.to_csv(csv2, header=False, index=False)
    
[/code]

[code]

    import os, sys
    import string
    import pandas as pd
    
    csv_dir = './csv/'  # a trailing '/' required
    csv1 = csv_dir + 'test1.csv'
    csv2 = csv_dir + 'test2.csv'
    
    # Check existence of CSV files, and read.
    if not (os.path.isfile(csv1) and os.path.isfile(csv2)):
        print(f'error: {csv1} or {csv2} do not exist.')
        sys.exit(1)
    
    df1 = pd.read_csv(csv1, header=None)
    df2 = pd.read_csv(csv2, header=None)
    
    # Check shape identity, and set columns and index(Excel-like).
    if not df1.shape == df2.shape:
        print(f'error: {csv1} and {csv2} differ in shape.')
        sys.exit(1)
    
    A_Z = list(string.ascii_uppercase)
    xls_col = A_Z + [A_Z[i // 26] + A_Z[i % 26] for i in range(26 * 26)]
    df1.columns = xls_col[:df1.columns.size]  # size <= 702 required
    df1.index = [str(i) for i in range(1, df1.index.size + 1)]
    df2.columns, df2.index = df1.columns, df1.index
    
    # Output DataFrames and cells with different values.
    print(f'df1({csv1}):\n{df1}')
    print(f'df2({csv2}):\n{df2}')
    
    print('-' * 10)
    df_eq = df1.eq(df2)
    for c, s in df_eq.items():
        for r, v in s.items():
            if v: continue
            print(f'{c + r}:  {df1.loc[r, c]}  {df2.loc[r, c]}')
    
[/code]

[code]

    df1(./csv/test1.csv):
        A   B   C   D   E   F   G   H   I   J   K   L
    1   1   2   3   4   5   6   7   8   9  10  11  12
    2  13  14  15  16  17  18  19  20  21  22  23  24
    3  25  26  27  28  29  30  31  32  33  34  35  36
    4  37  38  39  40  41  42  43  44  45  46  47  48
    5  49  50  51  52  53  54  55  56  57  58  59  60
    df2(./csv/test2.csv):
        A   B   C   D   E   F   G   H   I   J   K   L
    1   1   2   3   4   6   6   7   8   9  10  11  12
    2  13  14  15  17  17  18  20  20  21  23  23  24
    3  26  26  27  28  29  30  31  32  33  34  35  36
    4  37  38  39  40  41  42  43  44  45  46  47  49
    5  49  50  51  52  53  54  55  56  57  58  59  60
    ----------
    A3:  25  26
    D2:  16  17
    E1:  5  6
    G2:  19  20
    J2:  22  23
    L4:  48  49
    
[/code]


CC BY-SA 4.0
2022-10-23T14:08:40.363
91769
2022-10-24T10:19:38.700
2022-10-24T10:19:38.700
54588
54588
91691
answer