我在一个数据帧中有1000个观测值,需要将每一行分配给一个变量。
例如 我的数据集有1列1000行。每行都是一个字符串
Column 1
apple
orange
pineapple
我想使用执行以下操作的代码
A1 = apple
A2 = orange
A3 = pineapple
我尝试使用globals函数将DF转换为列表,将数据从行转换为列...我不知道要使用哪个函数!熊猫似乎可以解决问题,但我不知道从哪里开始。
for i in df:
df= globals()
df["A" + str(i)]
我遇到一个关键错误,我相信是由于'A'
不在数据框中。我已经在数据框中添加了A
,在相邻的列中添加了A0
到A1000
,但是无法正常工作。
如上所述,我希望将每个观察值分配给变量A(i)
稍后我在使用变量A1
至A1000
的代码中有一个for循环
提前感谢您使用什么功能的帮助或指导
答案 0 :(得分:0)
这应该可以解决问题:
data = ['apple', 'orange', 'pineapple']
i = 1
for c in data:
exec("%s='%s'" % ('A'+str(i), c))
i += 1
print(A1)
答案 1 :(得分:0)
直到除非您不希望将该变量存储在DataFrame本身内,否则您都可以使用Dictionary数据结构创建不同的键(将用作动态创建的变量),并将它们分配给数据框的每一行,如下所示:值。
dict = {}
size_of_dataFrame = 0
while size_of_dataFrame < 10000:
"Generate random unique key"
key = ...
"pull data out of dataframe using iterator"
value = ...
dict[key] = value
size_of_dataFrame += 1
我希望这有道理。
ATB