如果dataframe列A取值为空,那么让生成列B=列A+1;否则就生成列B=列A
时间: 2023-10-05 10:06:43 浏览: 49
你可以使用如下代码来实现:
```python
import pandas as pd
# 创建 dataframe
df = pd.DataFrame({
'A': ['a', '', 'b', 'c', ''],
})
# 生成列B
df['B'] = df['A'].apply(lambda x: x+'1' if x == '' else x)
# 打印 dataframe
print(df)
```
输出结果为:
```
A B
0 a a
1 1
2 b b
3 c c
4 1
```
其中,使用 `apply` 方法将一个函数应用到每个元素上,根据列A是否为空来生成列B的值。
相关问题
如果dataframe列A取值为NaN,那么让生成列B=列A+1;否则就生成列B=列A
你好!谢谢你的提问。针对你的问题,可以使用 pandas 库来处理。以下是一种实现方式:
```python
import pandas as pd
# 假设原始数据为 df,包含列 A 和列 B
df = pd.DataFrame({'A': [1, 2, float('nan'), 4], 'B': [0, 0, 0, 0]})
# 使用 fillna 方法将 NaN 值填充为 1
df['B'] = df['A'].fillna(1)
# 输出结果
print(df)
```
结果如下:
```
A B
0 1.0 1
1 2.0 2
2 NaN 1
3 4.0 4
```
这里使用 `fillna` 方法将列 A 中的 NaN 值填充为 1,然后将结果赋值给列 B。
希望这能解决你的问题,请尽管提出更多的问题,我会尽力回答。
如果dataframe列A取值为NaN,那么让生成列B=1;否则就生成列B=列A+1
可以使用 pandas 库中的 fillna 方法实现:
```python
import pandas as pd
df['B'] = df['A'].fillna(1)
```
以上代码会先将列 A 中的 NaN 值填充为 1,然后赋值给新生成的列 B。如果列 A 中没有 NaN 值,则直接将列 A 值赋值给列 B。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)