如何更改Pandas DataFrame的行名和列名为一个长尾?

2026-04-20 00:461阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计959个文字,预计阅读时间需要4分钟。

如何更改Pandas DataFrame的行名和列名为一个长尾?

目录 + DataFrame.rename() + 多个行名和列名的修改 + 原DataFrame的修改(参数inplace) + 使用lambda表达式和函数进行批处理 + add_prefix(),add_suffix() + 更新index和columns元素 + pandas.DataFrame行名(index)和列名

目录
  • DataFrame.rename()
    • 多个行名和列名的修改
    • 原DataFrame的修改(参数inplace)
    • 使用lambda表达式和函数进行批处理
  • add_prefix(), add_suffix()
    • index和columns元素的更新

      pandas.DataFrame行名(index)和列名(columns)的修改方法如下。

      rename()

      • 任意的行名(index)和列名(columns)的修改

      add_prefix(), add_suffix()

      • 列名的接头词和结尾词的追加

      index和columns元素的更新

      • 行名和列名全部修改

      接下来,对每个方法进行说明。

      rename()

      • 多个行名和列名的修改
      • 原DataFrame的修改(参数inplace)
      • 使用lambda表达式和函数进行批处理

      add_prefix(), add_suffix()

      index和columns元素的更新

      首先,先生成一个DaraFrame。

      import pandas as pd df = pd.DataFrame({'A': [11, 21, 31],                    'B': [12, 22, 32],                    'C': [13, 23, 33]},                   index=['ONE', 'TWO', 'THREE']) print(df) #         A   B   C # ONE    11  12  13 # TWO    21  22  23 # THREE  31  32  33

      DataFrame.rename()

      函数DataFrame.rename()可以对任意行和列的名称进行修改。
      DataFrame.rename()的参数有index和columns,使用"{旧值:新值}"字典的形式进行参数的指定。

      index为行,columns为列。只想修改某行或者某列的时候,只需要单独指定一个参数即可。

      修改后,返回一个新的DataFrame,原DataFrame并没有被修改。

      df_new = df.rename(columns={'A': 'a'}, index={'ONE': 'one'}) print(df_new) #         a   B   C # one    11  12  13 # TWO    21  22  23 # THREE  31  32  33 print(df) #         A   B   C # ONE    11  12  13 # TWO    21  22  23 # THREE  31  32  33

      多个行名和列名的修改

      多个行名和列名可以同时修改。只需要追加参数(字典的元素)。

      print(df.rename(columns={'A': 'a', 'C': 'c'})) # a B c # ONE 11 12 13 # TWO 21 22 23 # THREE 31 32 33

      原DataFrame的修改(参数inplace)

      默认的设置为原DataFrame不变,返回一个新的DataFrame。

      当参数inplace为True时,原DataFrame将会被修改。返回值为None。

      df_org = df.copy() df_org.rename(columns={'A': 'a'}, index={'ONE': 'one'}, inplace=True) print(df_org) # a B C # one 11 12 13 # TWO 21 22 23 # THREE 31 32 33

      使用lambda表达式和函数进行批处理

      rename()的参数index和columns值也可以指定为函数方法。

      比如,大小写的转换。

      print(df.rename(columns=str.lower, index=str.title)) # a b c # One 11 12 13 # Two 21 22 23 # Three 31 32 33

      lambda表达式-无名函数的指定。

      print(df.rename(columns=lambda s: s*3, index=lambda s: s + '!!')) # AAA BBB CCC # ONE!! 11 12 13 # TWO!! 21 22 23 # THREE!! 31 32 33

      add_prefix(), add_suffix()

      列名的接头词和结尾词的追加方法。add_prefix()和add_suffix()。

      在方法的参数里指定接头词或者结尾词。

      print(df.add_prefix('X_')) #        X_A  X_B  X_C # ONE     11   12   13 # TWO     21   22   23 # THREE   31   32   33 print(df.add_suffix('_X')) #        A_X  B_X  C_X # ONE     11   12   13 # TWO     21   22   23 # THREE   31   32   33

      add_prefix()和add_suffix()只能对列名(columns)进行修改。想要对行名进行修改的时候,可以参照上述lambda表达式的使用方法。

      index和columns元素的更新

      当想要对DataFrame里全部的元素修改或更新的时候,可以使用rename()方法的参数index,columns进行指定。

      如何更改Pandas DataFrame的行名和列名为一个长尾?

      可以在index,columns属性中指定List,tuple,pandas.Series等。

      df.index = [1, 2, 3] df.columns = ['a', 'b', 'c'] print(df) #     a   b   c # 1  11  12  13 # 2  21  22  23 # 3  31  32  33

      此时,请注意,如果列表等的大小(元素数)与行数/列数不一致时,则会发生错误。

      # df.index = [1, 2, 3, 4] # ValueError: Length mismatch: Expected axis has 3 elements, new values have 4 elements

      到此这篇关于Pandas.DataFrame的行名和列名的修改的文章就介绍到这了,更多相关Pandas.DataFrame行名和列名修改内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

      本文共计959个文字,预计阅读时间需要4分钟。

      如何更改Pandas DataFrame的行名和列名为一个长尾?

      目录 + DataFrame.rename() + 多个行名和列名的修改 + 原DataFrame的修改(参数inplace) + 使用lambda表达式和函数进行批处理 + add_prefix(),add_suffix() + 更新index和columns元素 + pandas.DataFrame行名(index)和列名

      目录
      • DataFrame.rename()
        • 多个行名和列名的修改
        • 原DataFrame的修改(参数inplace)
        • 使用lambda表达式和函数进行批处理
      • add_prefix(), add_suffix()
        • index和columns元素的更新

          pandas.DataFrame行名(index)和列名(columns)的修改方法如下。

          rename()

          • 任意的行名(index)和列名(columns)的修改

          add_prefix(), add_suffix()

          • 列名的接头词和结尾词的追加

          index和columns元素的更新

          • 行名和列名全部修改

          接下来,对每个方法进行说明。

          rename()

          • 多个行名和列名的修改
          • 原DataFrame的修改(参数inplace)
          • 使用lambda表达式和函数进行批处理

          add_prefix(), add_suffix()

          index和columns元素的更新

          首先,先生成一个DaraFrame。

          import pandas as pd df = pd.DataFrame({'A': [11, 21, 31],                    'B': [12, 22, 32],                    'C': [13, 23, 33]},                   index=['ONE', 'TWO', 'THREE']) print(df) #         A   B   C # ONE    11  12  13 # TWO    21  22  23 # THREE  31  32  33

          DataFrame.rename()

          函数DataFrame.rename()可以对任意行和列的名称进行修改。
          DataFrame.rename()的参数有index和columns,使用"{旧值:新值}"字典的形式进行参数的指定。

          index为行,columns为列。只想修改某行或者某列的时候,只需要单独指定一个参数即可。

          修改后,返回一个新的DataFrame,原DataFrame并没有被修改。

          df_new = df.rename(columns={'A': 'a'}, index={'ONE': 'one'}) print(df_new) #         a   B   C # one    11  12  13 # TWO    21  22  23 # THREE  31  32  33 print(df) #         A   B   C # ONE    11  12  13 # TWO    21  22  23 # THREE  31  32  33

          多个行名和列名的修改

          多个行名和列名可以同时修改。只需要追加参数(字典的元素)。

          print(df.rename(columns={'A': 'a', 'C': 'c'})) # a B c # ONE 11 12 13 # TWO 21 22 23 # THREE 31 32 33

          原DataFrame的修改(参数inplace)

          默认的设置为原DataFrame不变,返回一个新的DataFrame。

          当参数inplace为True时,原DataFrame将会被修改。返回值为None。

          df_org = df.copy() df_org.rename(columns={'A': 'a'}, index={'ONE': 'one'}, inplace=True) print(df_org) # a B C # one 11 12 13 # TWO 21 22 23 # THREE 31 32 33

          使用lambda表达式和函数进行批处理

          rename()的参数index和columns值也可以指定为函数方法。

          比如,大小写的转换。

          print(df.rename(columns=str.lower, index=str.title)) # a b c # One 11 12 13 # Two 21 22 23 # Three 31 32 33

          lambda表达式-无名函数的指定。

          print(df.rename(columns=lambda s: s*3, index=lambda s: s + '!!')) # AAA BBB CCC # ONE!! 11 12 13 # TWO!! 21 22 23 # THREE!! 31 32 33

          add_prefix(), add_suffix()

          列名的接头词和结尾词的追加方法。add_prefix()和add_suffix()。

          在方法的参数里指定接头词或者结尾词。

          print(df.add_prefix('X_')) #        X_A  X_B  X_C # ONE     11   12   13 # TWO     21   22   23 # THREE   31   32   33 print(df.add_suffix('_X')) #        A_X  B_X  C_X # ONE     11   12   13 # TWO     21   22   23 # THREE   31   32   33

          add_prefix()和add_suffix()只能对列名(columns)进行修改。想要对行名进行修改的时候,可以参照上述lambda表达式的使用方法。

          index和columns元素的更新

          当想要对DataFrame里全部的元素修改或更新的时候,可以使用rename()方法的参数index,columns进行指定。

          如何更改Pandas DataFrame的行名和列名为一个长尾?

          可以在index,columns属性中指定List,tuple,pandas.Series等。

          df.index = [1, 2, 3] df.columns = ['a', 'b', 'c'] print(df) #     a   b   c # 1  11  12  13 # 2  21  22  23 # 3  31  32  33

          此时,请注意,如果列表等的大小(元素数)与行数/列数不一致时,则会发生错误。

          # df.index = [1, 2, 3, 4] # ValueError: Length mismatch: Expected axis has 3 elements, new values have 4 elements

          到此这篇关于Pandas.DataFrame的行名和列名的修改的文章就介绍到这了,更多相关Pandas.DataFrame行名和列名修改内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!