一、什么是cols
在Python中,cols是指数据类型为tuple、list或array等可以切片的数据结构中的“列”。在数据分析、数据处理、数据可视化等领域中,cols通常指数据表格中的列。
cols是一个二维数组的一维,用于存储数据表格中的某一列。cols中每个元素都是该列中的一个元素。
二、如何定义cols
Python中定义cols的方式取决于所使用的数据类型。下面以list和tuple两种常用数据类型为例:
lst = [["name","age","gender"],
["Tom", 18, "male"],
["Lily", 19, "female"],
["Jerry", 20, "male"]]
# cols1,直接调用该列
cols1 = lst[0] # ['name', 'age', 'gender']
cols2 = [row[0] for row in lst] # ['name', 'Tom', 'Lily', 'Jerry']
cols3 = [18, 19, 20] # 通过硬编码定义cols
# tuple
tpl = (("name","age","gender"),
("Tom", 18, "male"),
("Lily", 19, "female"),
("Jerry", 20, "male"))
# cols1,直接调用该列
cols1 = tpl[0] # ('name', 'age', 'gender')
cols2 = [row[0] for row in tpl] # ['name', 'Tom', 'Lily', 'Jerry']
cols3 = (18, 19, 20) # 通过硬编码定义cols
三、如何访问cols中的元素
cols可以通过索引访问其中的元素,访问方式与list和tuple中访问元素的方式相同。例如,访问上述list中的第1列:
cols1 = lst[0] # ['name', 'age', 'gender']
在操作数据表格时,通常需要访问表格中的某几列,可以使用以下方式:
# 获取第1和第3列
cols1 = [row[0] for row in lst] # ['name', 'Tom', 'Lily', 'Jerry']
cols3 = [row[2] for row in lst] # ['gender', 'male', 'female', 'male']
如果列名已知,可以使用以下方式进行访问:
namels = ["name", "age"]
idx = [lst[0].index(colname) for colname in namels]
cols = [[row[i] for row in lst] for i in idx]
# cols = [['name', 'Tom', 'Lily', 'Jerry'], [18, 19, 20]]
四、如何修改cols中的元素
cols中的元素可以通过索引直接修改,修改后会影响到原数据。使用以下方式修改第1列中的“name”为“Name”:
lst[1][0] = "Name"
# lst = [['name', 'age', 'gender'], ['Name', 18, 'male'], ['Lily', 19, 'female'], ['Jerry', 20, 'male']]
可以使用同样的方式修改数据表格中多列数据的元素。
五、如何删除cols中的元素
cols中的元素可以通过索引直接删除,使用以下方式删除第2列:
for row in lst:
del row[1]
# lst = [['name', 'gender'], ['Name', 'male'], ['Lily', 'female'], ['Jerry', 'male']]
删除操作同样可以作用于数据表格中多列数据。
六、如何向cols中添加元素
可以使用append()函数向list中添加元素,使用以下方式向第2列中添加数据“newdata”:
for row in lst:
row.append("newdata")
# lst = [["name","age","gender","newdata"],
# ["Tom","male","newdata","newdata"],
# ["Lily","female","newdata","newdata"],
# ["Jerry","male","newdata","newdata"]]
如果要向list中添加一列新数据,则需在所有行中添加该数据。使用以下方式向list中添加一列新数据:
newcol = [1, 2, 3, 4]
for i, row in enumerate(lst):
row.append(newcol[i])
使用以上方式可以轻松地向数据表格中添加新数据。