dataframe使用多行数据生成新列
时间: 2023-02-28 07:20:32 浏览: 90
在 Pandas 中,可以使用 apply 方法和 lambda 函数来生成新列。
例如:假设有一个名为 "df" 的数据框,其中有两列 "A" 和 "B"。
```
df['C'] = df.apply(lambda row: row['A'] + row['B'], axis=1)
```
这会在数据框中创建一个名为 "C" 的新列,其中每个单元格的值是 "A" 列和 "B" 列对应行的单元格值之和。
相关问题
将输入的多行数据生成数据框
可以使用 pandas 库将输入的多行数据生成数据框。下面是示例代码:
```python
import pandas as pd
# 输入多行数据,每行数据以逗号分隔
input_data = 'John,25,Male\nMary,30,Female\nBob,20,Male'
# 将输入数据转成列表
rows = input_data.split('\n')
# 将列表转成二维列表
data = [row.split(',') for row in rows]
# 创建数据框
df = pd.DataFrame(data, columns=['Name', 'Age', 'Gender'])
print(df)
```
输出结果为:
```
Name Age Gender
0 John 25 Male
1 Mary 30 Female
2 Bob 20 Male
```
这里假设输入的数据中每行数据以逗号分隔,并且每个字段的顺序都相同。如果输入数据的格式不同,需要根据实际情况调整代码。
dataframe 根据值生成多行
Dataframe可以根据值生成多行的方法有很多,以下是一种常见的方法:
首先,我们需要创建一个空的Dataframe对象,并定义好其列名和数据类型。可以使用如下代码创建一个空的Dataframe对象:
import pandas as pd
df = pd.DataFrame(columns=['列1', '列2'], dtype=int)
接下来,我们可以使用append()方法来向Dataframe中添加行数据。该方法可以接收一个字典作为参数,字典中的键对应列名,值对应相应的数据。
例如,我们希望将值为1和2的行数据添加到Dataframe中,可以使用如下代码:
df = df.append({'列1': 1, '列2': 2}, ignore_index=True)
df = df.append({'列1': 1, '列2': 2}, ignore_index=True)
上述代码中,ignore_index参数设置为True,则会根据添加的行数据自动分配行索引。
如果我们需要往Dataframe中添加多行数据,可以通过循环来实现,例如:
for i in range(5):
df = df.append({'列1': i+1, '列2': i+2}, ignore_index=True)
上述代码将实现在Dataframe中添加5行数据,其中'列1'的值为1-5,'列2'的值为2-6。
通过上述的方法,可以根据值生成多行,实现灵活的数据处理和操作。在实际应用中,我们可以根据具体的需求和数据特点灵活运用Dataframe的数据处理函数和方法,实现多行数据的生成和操作。
阅读全文