Pandas 如何根据循环的值添加dataframe列
我有一个python中的数据帧,称为df。它包含两个变量,名称和年龄。我想在python中做一个循环,生成10个新的列数据帧,称为Age_1、Age_2、Age_3…Age_10,其中包含Age的值 到目前为止,我已经尝试:Pandas 如何根据循环的值添加dataframe列,pandas,dataframe,import,Pandas,Dataframe,Import,我有一个python中的数据帧,称为df。它包含两个变量,名称和年龄。我想在python中做一个循环,生成10个新的列数据帧,称为Age_1、Age_2、Age_3…Age_10,其中包含Age的值 到目前为止,我已经尝试: import pandas as pd data = [['tom', 10], ['nick', 15], ['juli', 14]] df = pd.DataFrame(data, columns = ['Name', 'Age']) for i in range(1,
import pandas as pd
data = [['tom', 10], ['nick', 15], ['juli', 14]]
df = pd.DataFrame(data, columns = ['Name', 'Age'])
for i in range(1,11):
df[Age_'i'] = df['Age']
只需将此
用于循环
:
for x in range(0,11):
df['Age_'+str(x)]=df['Age']
或
for x in range(0,11):
df['Age_{}'.format(x)]=df['Age']
for x in range(0,11):
df['Age_%s'%(x)]=df['Age']
或
for x in range(0,11):
df['Age_{}'.format(x)]=df['Age']
for x in range(0,11):
df['Age_%s'%(x)]=df['Age']
现在,如果您打印df
,您将获得所需的输出:
只需将此
用于循环
:
for x in range(0,11):
df['Age_'+str(x)]=df['Age']
或
for x in range(0,11):
df['Age_{}'.format(x)]=df['Age']
for x in range(0,11):
df['Age_%s'%(x)]=df['Age']
或
for x in range(0,11):
df['Age_{}'.format(x)]=df['Age']
for x in range(0,11):
df['Age_%s'%(x)]=df['Age']
现在,如果您打印df
,您将获得所需的输出:
您可以使用
。分配和**
解包
df.assign(**{f'Age_{i}' : df['Age'] for i in range(11)})
您可以使用。分配和**
解包
df.assign(**{f'Age_{i}' : df['Age'] for i in range(11)})
df[f'Age{i}]=:。但是你真的只是想把这个专栏重复10次吗?df[f'Age_{i}]=
:。但你真的只是想把这个专栏重复10次吗?