我不明白为什么在第一行要加上 row
. 例如: : row['G1']
.
然而在第二行中,当我们要删除它们时,我们没有使用 row['G1']
,我们只是把 ['G1']
.
另外,什么是 r['pass'] =
做什么?为什么我们需要 ['pass']
之后 r
?
代码:我不明白为什么在第一行我们需要添加 row。
import pandas as pd
r = pd.read_csv("Data.csv", sep = ';')
len(r)
r['pass'] = r.apply(lambda row: 1 if (row['G1'] + row['G2'] + row['G3']) >= 35 else 0, axis=1)
r = r.drop(['G1', 'G2', 'G3'], axis=1)
r.head()
首先你需要理解的是 r
是一个数据框,数据框中的列可以通过以下操作访问 df[column_name]
. 所以.., r['pass']
意味着您正在添加一个名为 pass
在你的数据框架中 r
的条件下,将其数值添加到 apply
语句。
当使用 掉,当你看到文档时,输入可以是单列,也可以是列表。由于,要丢弃多列,所以很简单,把要丢弃的列列成一个列表,然后用丢弃语法传递。
在第二行中,当我们在放弃它们时,我们不用row['G1'],我们只把['G1']
如果你看一下 DataFrame.drop 文档,你会发现它使用了 DataFrame
开头 .drop()
. 所以,在这种情况下,它是: r.drop()
. 当你做 r.drop(['G1', 'G2', 'G3'], axis=1)
你要做的是选择你要删除的列列表(在这种情况下是 ['G1', 'G2', 'G3']
). 而且 axis=1
意味着你想从列中删除这些值。
更多信息请看文档。