我在 Python 和 Pandas 中设置我的第一个分析(两者都是新手),并且有一些关于如何正确设置的问题/问题。
本质上,我正在尝试按时间序列查看用户行为,但我的用户数比天数还多,因此我尝试每月查看一次。我已经建立了DataFrame
这种方式:
df2 = pd.DataFrame({'ID':range(100)})
df2['Day1'] = random.sample(xrange(1000), 100)
df2['Day2'] = random.sample(xrange(1000), 100)
df2['Day3'] = random.sample(xrange(1000), 100)
我尝试通过多种方式向“ID”列添加索引,但 1) 不确定我是否需要它,以及 2) 我的任何方法都不会采用。这是我尝试过的:
df2 = pd.DataFrame({'ID':range(100)}, index_col='ID')
df2 = pd.DataFrame({'ID':range(100)}, index_col=0)
df2.index(0)
df2.index('ID')
df2.reindex(index='ID')
df2.reindex(index=0)
我试图创建一个新数据框的最终输出,它将显示第 2 天的值是否比第 1 天小 95%,第 3 天是否比第 2 天小 95% - 以后(假设我有DataFrame
100 列)。我看起来的输出可能如下所示:
ID Day2 Day3
1 NaN 1
2 NaN NaN
3 NaN NaN
4 1 NaN
我相信确定这一点的适当方法是运行一个 for 循环,如下所示:
for i in df2:
if (Day2-Day1)/Day1 < .95:
print 1
但是,我不确定如何引用函数中的列,也不确定如何使该函数灵活地包含DataFrame
. 我应该如何引用这个函数的列?
我应该如何引用这个函数的列?