dataframe数据加一列标记
时间: 2023-07-06 07:16:33 浏览: 91
DataFrame中去除指定列为空的行方法
要在`pandas`的`DataFrame`中添加一列标记,可以使用以下代码:
```python
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 添加一列标记
df['Flag'] = ['Yes', 'No', 'Yes']
# 打印DataFrame
print(df)
```
在这个例子中,我们首先创建了一个包含'A'和'B'两列数据的`DataFrame`,然后使用`df['Flag'] = ['Yes', 'No', 'Yes']`语句在DataFrame中添加了一列名为'Flag'的新标记列。最后使用`print(df)`语句打印出添加了新列的DataFrame。
如果你想要添加的是已有数据列计算出的标记列,可以使用`apply`函数实现。例如,以下代码将在DataFrame中添加一列'Flag',该列的数据是'A'列和'B'列数据之和大于10的情况下为'Yes',否则为'No':
```python
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 添加一列标记
df['Flag'] = df.apply(lambda row: 'Yes' if row['A'] + row['B'] > 10 else 'No', axis=1)
# 打印DataFrame
print(df)
```
在这个例子中,我们使用`apply`函数和`lambda`表达式计算了新列'Flag'的数据,并将其添加到了DataFrame中。 `apply`函数以行为单位遍历DataFrame中的数据,并对每一行数据进行指定的操作,这里指定的操作是如果该行'A'列和'B'列的数据之和大于10,则标记为'Yes',否则标记为'No'。`axis=1`参数表示对行进行操作。最后使用`print(df)`打印出添加了新列的DataFrame。
阅读全文