loc和iloc

pandas 中,lociloc 是用于访问和操作 DataFrameSeries 数据的两种常用方法。它们之间的区别在于索引的类型和用法。

loc 通过标签(Label)来访问数据。

iloc 通过整数位置(Integer Location)来访问数据。

以下是它们的详细解释和示例:

  1. loc

    loc 允许您使用行和列的标签来访问数据。它的基本语法是 df.loc[row_label, column_label],其中 row_label 是行的标签,column_label 是列的标签。您可以使用单个标签、标签列表、切片或布尔索引来进行访问。

    import pandas as pd

    data = {'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 35]}

    df = pd.DataFrame(data, index=['row1', 'row2', 'row3'])

    # 使用 loc 访问数据
    print(df.loc['row1', 'Name']) # Alice
    print(df.loc['row2', ['Name', 'Age']]) # Bob, 30

  2. iloc

    iloc 允许您使用整数位置(从 0 开始)来访问数据。它的基本语法是 df.iloc[row_position, column_position],其中 row_position 是行的整数位置,column_position 是列的整数位置。您可以使用整数、整数列表、切片或布尔索引来进行访问。

    import pandas as pd

    data = {'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 35]}

    df = pd.DataFrame(data)

    # 使用 iloc 访问数据
    print(df.iloc[0, 1]) # Alice
    print(df.iloc[1, [0, 1]]) # Bob, 30

总之,lociloc 都用于访问和操作 DataFrameSeries 数据,但基于不同的索引类型。根据您的需求和数据结构,选择适合的方法来访问数据。

示例深思:

df.loc[df['dome_roam_flux_days'] == r'\N', 'dome_roam_flux_days'] = None