我有一个相当大的数据集forms的数据框,我想知道如何能够将数据框分成两个随机样本(80%和20%)进行培训和testing。 谢谢!
它们看起来都非常相似,我很好奇哪个包对财务数据分析更有利。
现在我每次运行脚本时都会导入一个相当大的CSV作为数据框。 有没有一个很好的解决scheme,保持该dataframe在运行之间始终可用,所以我不必花费所有的时间等待脚本运行?
我想从一个目录中读取几个CSV文件到pandas,并将它们连接成一个大的dataframe。 我还没有弄明白。 这是我到目前为止: import glob import pandas as pd # get data file names path =r'C:\DRO\DCL_rawdata_files' filenames = glob.glob(path + "/*.csv") dfs = [] for filename in filenames: dfs.append(pd.read_csv(filename)) # Concatenate all data into one DataFrame big_frame = pd.concat(dfs, ignore_index=True) 我想我需要在for循环内的一些帮助?
我正在试图保存一个CSV文件后,对文件进行一些编辑。 每次我使用pd.to_csv('C:/Path of file.csv') csv文件有一个单独的索引列。 我想避免将索引打印到csv。 我试过了: pd.read_csv('C:/Path to file to edit.csv', index_col = False) 并保存文件… pd.to_csv('C:/Path to save edited file.csv', index_col = False) 但是,我仍然得到不需要的索引列。 如何在保存文件时避免这种情况?
我最近遇到了python的pandas库,根据这个基准testingperformance出非常快的内存合并。 它甚至比R中的data.table包(我select分析的语言)更快。 为什么pandas比data.table ? 是因为python比R有一个固有的速度优势,还是有一些折衷,我不知道? 有没有办法在data.table执行内部和外部连接,而不是通过merge(X, Y, all=FALSE)和merge(X, Y, all=TRUE) ? 以下是用于对各种软件包进行基准testing的R代码和Python代码 。
我从pandas数据框文档开始: http : //pandas.pydata.org/pandas-docs/stable/dsintro.html 我想用时间序列types的计算迭代地填充dataframe。 所以基本上,我想初始化,数据框与列A,B和时间戳记行,全部为0或全部NaN。 然后,我会添加初始值,并从这一行计算新的行之前,行[A] [T] =行[A] [T-1] +1左右。 我目前使用的代码如下,但我觉得这是一种丑陋的,必须有一种方式,直接与数据框或一般更好的方式做到这一点。 注意:我正在使用Python 2.7。 import datetime as dt import pandas as pd import scipy as s if __name__ == '__main__': base = dt.datetime.today().date() dates = [ base – dt.timedelta(days=x) for x in range(0,10) ] dates.sort() valdict = {} symbols = ['A','B', 'C'] for symb in […]
我从csv文件加载一些机器学习数据。 前两列是观察值,其余列是特征。 目前,我做了以下几点: data = pandas.read_csv('mydata.csv') 这给了一些像: data = pandas.DataFrame(np.random.rand(10,5), columns = list('abcde')) 我想在两个数据框中分割这个dataframe:一个包含列a和b ,另一个包含列c , d和e 。 写这样的东西是不可能的 observations = data[:'c'] features = data['c':] 我不确定最好的方法是什么。 我需要一个pd.Panel吗? 顺便说一下,我发现dataframe索引相当不一致: data['a']是允许的,但data[0]不是。 另一方面, data['a':]是不允许的,但data[0:]是。 这有没有一个实际的理由? 假如data[0] != data[0:1]
有没有办法在交互式或脚本执行模式下扩大输出显示? 具体来说,我在pandasdataframe上使用describe()函数。 当dataframe是5列(标签)宽,我得到我想要的描述性统计。 但是,如果dataframe有更多的列,则统计信息被抑制,并返回如下所示: >Index: 8 entries, count to max >Data columns: >x1 8 non-null values >x2 8 non-null values >x3 8 non-null values >x4 8 non-null values >x5 8 non-null values >x6 8 non-null values >x7 8 non-null values 无论有6列还是7列,都给出“8”值。 “8”是指什么? 我已经尝试拖动较大的空闲窗口,以及增加“configuration空闲”宽度选项,无济于事。 我使用Pandas和describe()的目的是避免使用像STATA这样的第二个程序来进行基本的数据操作和调查。 谢谢。 Python / IDLE 2.7.3 pandas0.8.1 Notepad ++ 6.1.4(UNICODE) Windows Vista […]
我很好奇df[2]为什么不被支持,而df.ix[2]和df[2:3]都工作。 In [26]: df.ix[2] Out[26]: A 1.027680 B 1.514210 C -1.466963 D -0.162339 Name: 2000-01-03 00:00:00 In [27]: df[2:3] Out[27]: ABCD 2000-01-03 1.02768 1.51421 -1.466963 -0.162339 我希望df[2]的工作方式与df[2:3] ,以符合Python索引约定。 有没有支持单个整数索引行的devise理由?