在熊猫DF中,当递归添加值并最后返回时,它给出的是“无”,即函数不返回任何值。
请参见下面的代码,在此我创建了一个具有三列name
,class
和marks
的空DF,并使用add_values
函数通过递归向该DF添加值一些随机数据,最后返回DF。
DF显示为无。请对此提供帮助。
也尝试在递归之间打印DF,它正在打印值。
import pandas as pd
import random
import string
def set_random_data(df):
name = "".join([random.choice(string.ascii_lowercase) for i in range(3)])
iclass = random.randint(1,10)
marks = random.randint(50,100)
df = df.append({"name": name, "class": iclass, "marks": marks}, ignore_index=True)
return df
def add_values(df,items):
if items == 0:
return df
else:
new_df = set_random_data(df)
#print new_df # able to see values here
items -= 1
add_values(new_df,items)
if __name__ == "__main__":
column_names=["name","class","marks"]
df = pd.DataFrame(columns=column_names)
items = 4
orig_df = add_values(df,items)
print orig_df #printing None here