_property _DataFrame.loc

通过标签或布尔数组访问一行和一列。

Allow Inputs

  • 单个标签,例如:“5”或“a”,“5”被解释为索引的标签
  • 标签列表或数组,例如:[‘a’, ‘b’, ‘c’]
  • 带有标签的切片对象,例如:’a’: ‘f’
  • 与被切片的轴长度相同的布尔数组,例如:[True, False, True]
  • 一个可对齐的布尔Series
  • 一个可调用函数,带有一个参数并返回用于索引的有效输出

    Example

    ```python import pandas as pd

df = pd.DataFrame({‘site’:[‘google’, ‘baidu’, ‘wiki’], ‘age’:[18, 39, 22], ‘price’: [1.0, 2.0, 3.0], ‘color’: [‘red’, ‘black’, None]},index=[‘first’,’second’,’third’])

df.loc[‘first’]

site google age 18 price 1 color red Name: first, dtype: object

  1. <a name="U7UX2"></a>
  2. # Example
  3. ```python
  4. import pandas as pd
  5. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  6. 'age':[18, 39, 22],
  7. 'price': [1.0, 2.0, 3.0],
  8. 'color': ['red', 'black', None]},index=['first','second','third'])
  9. df.loc[['first', 'second']]
  10. -----------------------------------------------------------
  11. site age price color
  12. first google 18 1.0 red
  13. second baidu 39 2.0 black

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc['first', 'site']
  7. -----------------------------------------------
  8. 'google'

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc['first':'third', 'site']
  7. ------------------------------------------
  8. first google
  9. second baidu
  10. third wiki
  11. Name: site, dtype: object

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc[[True, False, True]]
  7. ---------------------------------------------------
  8. site age price color
  9. first google 18 1.0 red
  10. third wiki 22 3.0 None

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc[df['age'] > 18]
  7. ------------------------------------------------------
  8. site age price color
  9. second baidu 39 2.0 black
  10. third wiki 22 3.0 None

Example

  1. import pandas as pd
  2. df = pd.DataFrame({"site":["google", "baidu", "wiki"],
  3. "age":[18, 39, 22],
  4. "price": [1.0, 2.0, 3.0],
  5. "color": ["red", "black", None]},index=["first","second","third"])
  6. df.loc[(df["age"] >= 18) & (df["age"] <= 25)]
  7. ----------------------------------------------------------
  8. site age price color
  9. first google 18 1.0 red
  10. third wiki 22 3.0 None

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc[df['age'] > 18, ['age']]
  7. -----------------------------------------------------
  8. age
  9. second 39
  10. third 22

Example

对每一行应用函数,返回符合条件的行。

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc[lambda row: row['age'] == 18]
  7. ------------------------------------------------------
  8. site age price color
  9. first google 18 1.0 red

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc[['first', 'second'], ['age']] = 18
  7. df
  8. --------------------------------------------------
  9. site age price color
  10. first google 18 1.0 red
  11. second baidu 18 2.0 black
  12. third wiki 22 3.0 None

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc['first'] = 10
  7. df
  8. --------------------------------------------------------
  9. site age price color
  10. first 10 10 10.0 10
  11. second baidu 39 2.0 black
  12. third wiki 22 3.0 None

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc[:, 'age'] = 30
  7. df
  8. ---------------------------------------------------
  9. site age price color
  10. first google 30 1.0 red
  11. second baidu 30 2.0 black
  12. third wiki 30 3.0 None

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=['first','second','third'])
  6. df.loc[df['age'] > 18] = 0
  7. df
  8. -----------------------------------------------------------
  9. site age price color
  10. first google 18 1.0 red
  11. second 0 0 0.0 0
  12. third 0 0 0.0 0

Example

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [1.0, 2.0, 3.0],
  5. 'color': ['red', 'black', None]},index=[7, 8, 9])
  6. df.loc[7:9]
  7. ------------------------------------------------------------
  8. site age price color
  9. 7 google 18 1.0 red
  10. 8 baidu 39 2.0 black
  11. 9 wiki 22 3.0 None