Pandas 如何将第一列设为索引

Pandas 如何将第一列设为索引

基础知识简介:

‘Pandas’是Python中最重要的库之一。它被广泛用于机器学习和数据分析的不同应用中。使用Pandas,程序员可以创建、读取和操作大量数据,并处理任何文件。’Pandas’有许多ML工具,可以应用于大量数据并得到所需的结果。

在Pandas中,数据可以以两种形式进行排列:

  1. Series
  2. DataFrames
  • Series可以表示一维排列的数据,类似于数组或列表。
  • 而DataFrame则是数据的多维表示,类似于表格。它只是一组Series的数组。

    这是一个简单的示例程序:

import pandas as p
name = p. Series (["Raghav", "Charan", "Santhosh"])
roll = p. Series ([301, 202, 103])
branch = p. Series (["ECE", "EEE", "CSE"])
age = p. Series ([19, 18, 19])
dataframe = p. DataFrame ({'name': name, 'roll': roll, 'branch': branch, 'age': age})
print (dataframe)

输出:

             name     roll   branch   age
0       Raghav      301        ECE     19
1       Charan      202        EEE      18
2    Santhosh     103        CSE      19

理解:

创建了三个单独的Series-名称、年龄、编号和分支。然后将它们合并成一个数据帧来表示一个表。

  • 将数据帧的进入被视为一个键值对。
  • 键表示列名,值表示列中的数据。
  • 它默认创建索引从0到行数-1来表示表格展示中的行。
  • 程序员可以将任何列设置为索引,而不仅仅是0到n。本教程将解释如何做到这一点。

set_index 方法

鉴于方法和工具的简单性和丰富性,我们可以使用一个简单的方法将任何列设置为索引, “set_index().”

语法:

DataFrame. set_index (columns, drop = True, append = False, in place = False, verify_integrity = False)lass="codeblock">

  • columns(列): 要设置为索引的列的列表。
  • drop(丢弃): 如果设置为False,在它被用作索引之后,该列将再次在表内指定,就像普通的列一样。因此,默认情况下设置为True。
  • append(追加): 如果设置为True,该列将追加到现有的索引中,而不是成为表的唯一索引。默认情况下设置为False。
  • inplace(就地操作): 如果设置为True,则确定是使用新的数据框还是更新当前的数据框。默认情况下设置为False。
  • verify_integrity(验证完整性): 如果设置为True,它将检查索引中是否有重复值,并在有重复值时返回一个ValueError。默认情况下设置为False。

示例:

import pandas as p
Studentdata = {
        "Names": ["Raghav", "Charan", "Santosh"],
        "Branch": ["ECE", "B-Arch", "AIML"],
        "Age": [19, 18, 19],
        "CGPA": [9.1, 9.4, 9.6]
        }
dataframe = p. DataFrame (Student data, index = ["Student1", "Student2", "Student3"])
print ("original dataframe: ")
print (dataframe)
dataframe = dataframe. set_index (['Branch'])
print ("\nBranch column as index to the data frame: ")
print (dataframe)
print ("\nNames and Age columns as an index to the data frame: ")
dataframe = dataframe. set_index (['Names', 'Age'])
print (dataframe)

输出:

Original dataframe: 
                          Names     Branch    Age   CGPA
Student1        Raghav           ECE      19        9.1
Student2        Charan      B-Arch      18       9.4
Student3       Santosh        AIML      19       9.6

Branch column as the index to the data frame: 
                   Names    Age    CGPA
Branch                    
ECE           Raghav       19        9.1
B-Arch     Charan      18        9.4
AIML      Santosh      19        9.6
Names and Age columns as the index to the data frame: 
                             CGPA
Names     Age      
Raghav      19         9.1
Charan      18         9.4
Santosh    19         9.6

理解:

在上面的代码中,第一部分将“Branch”列作为索引,一旦它被作为索引,它将从表中删除,因为默认情况下drop参数设置为True。因此,在下一部分中,当“Names”和“Age”列被作为索引时,“Branch”列将不存在。

  • 处理.csv文件:

使用pandas,程序员可以处理任何文件。例如,要处理CSV文件:

  • CSV文件是一种以逗号分隔的值存储在表格中的文本文件。

程序:

import pandas as p
Employeedata = {
        "Names": ["Sudha", "Harini", "Venkat"],
        "Branch": ["HR", "Developer", "Sales"],
        "Age": [44, 23, 44],
        "Salary": [112000, 94000, 122000],
        "Experience (yrs)": [8, 2, 8]
        }
dataframe = p. DataFrame (Employeedata)
print (dataframe)
dataframe. to_csv  ('samplefile.csv', index = False)
dataframe = p. read_csv ('samplefile.csv', index_col = 0)
dataframe. head ()

输出:

        Names         Branch   Age      Salary    Experience (yrs)
0       Sudha                HR      44    112000                           8
1       Harini   Developer      23      94000                           2
2     Venkat             Sales     44     122000                          8

理解:

使用 .to_csv(),数据帧被转换成CSV文件,并使用 .read_csv(),读取该文件。在这个数据帧上,我们可以将索引更改为任何想要的列,就像普通的数据帧一样:

dataframe. set_index ('Names')

像普通的数据框一样,CSV文件中的数据框将被修改,索引变为“Names”列。该文件可以在python目录中找到并进行检查:

Pandas 如何将第一列设为索引

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程