【python-熊猫:重组DataFrames】教程文章相关的互联网学习教程文章

python – Pandas Dataframe to_csv格式输出【代码】

我找不到控制每列数据帧输出的方法.从以下代码:df.to_csv('dfnc.txt', sep=' ', float_format='%.8f',cols=['cycle','passs','ip','lon','lat'],index=False)我明白了:1.00000000 1.00000000 543.00000000 23.15881870 -64.70485950 1.00000000 1.00000000 544.00000000 23.10356160 -64.64569150 1.00000000 1.00000000 545.00000000 23.04852510 -64.58650550 1.00000000 1.00000000 546.00000000 22.99370760 -64.52730150 1....

python – 将Pandas DataFrame行合并到一列中的字符串中【代码】

鉴于此DataFramer3 value r1 r2 1 2 3 12 4 13 2 13 4 14 2 14 3 1 2 1 3 11 4 13 1 13 4 14 1 14 3 1……最好的方法是什么?r3 value r1 r2 1 2 3,4 23 2,4 24 2,3 2 2 1 3,4 23 1,4 24 1,3 2基本上,我正在尝试将r3列压缩为逗号分隔的字符串.如果需要,可以...

python – Pandas DataFrame,用另一列的值替换列的值【代码】

我的boosting_df Pandas DataFrame如下:sku boost1 boost2 boost3 boost4 0 a ffffdfg a fggg replace 1 b fff fff fff replace 2 c ddf b ddf replace 3 d dfgd dfgd d replace对于每一行,如果’sku’的值与值boost1或boost2或boost3相同,那么我想用匹配值替换boost4内的值 例:sku boost1 boost2 boost3 0 a ffffdfg replace fggg 1 b fff fff ...

Python Pandas DataFrame read_csv UnicodeDecodeError【代码】

我有一个129 MB的CSV文件,包含849,275行和18列.我正在尝试使用read_csv将CSV文件读入pandas DataFrame. 当我使用encoding =’cp1252’时:read_file = pd.read_csv('myfile.csv', encoding='cp1252')错误很长,但最终在底部说:UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 41:character maps to <undefined>当我指定:no encoding,encoding =’utf-8′,或encoding =’utf-8-sig’时,我得到:UnicodeDe...

python – Pandas Dataframe:将带有列表的行展开到多行,并为所有列创建所需的索引【代码】

我在pandas数据帧中有时间序列数据,索引作为测量开始时的时间,列以固定采样率记录的值列表(连续索引的差异/列表中元素的数量) 这是它的样子:Time A B ....... Z 0 [1, 2, 3, 4] [1, 2, 3, 4] 2 [5, 6, 7, 8] [5, 6, 7, 8] 4 [9, 10, 11, 12] [9, 10, 11, 12] 6 [13, 14, 15, 16] [13, 14, 15, 16 ] ...我想将所有列中的每一行扩展为多行,以便:Time ...

python – 如何在使用stack / unstack时维护Pandas DataFrame索引顺序?【代码】

示例一:注意给定Pandas DataFrame df的索引顺序:>>> dfA B first second zzz z 2 4a 1 5 aaa z 6 3a 7 8在给定的df DataFrame对象上使用堆栈和unstack方法之后,索引将按字典顺序(按字母顺序)自动排序,以便丢失行的原始顺序.>>> df.unstack().stack()A B first second aaa a 7 8z 6 3 zzz a 1 5z 2 4在上面的拆卸/堆栈操作之后是否可以保持原始顺...

python – 当子类化DataFrame时如何为’loc’编写包装器方法【代码】

我正在尝试为DataFrame的子类编写一个包装器方法class SubDataFrame(DataFrame):...a = SubDataFrame() b = a.loc[row, column]在最后一行中,我想在处理超类中的loc之前或之后,在SubDataFrame类中单独处理元数据. 我不知道如何实现这种表示法,因为如果我只是定义def loc(self, *args, **kwargs)SubDataFrame中的方法loc []括号表示法不起作用. (AttributeError:instancemethod没有属性getitem). 我找不到关于如何实现这个的文档.解...

Python – 熊猫慢.想要在DataFrame中首次出现【代码】

我有一个人的数据框架.此DataFrame中的一列是place_id.我还有一个地方的DataFrame,其中一列是place_id,另一列是天气.对于每个人,我都在努力寻找相应的天气.重要的是,许多人拥有相同的place_ids. 目前,我的设置如下:def place_id_to_weather(pid):return place_df[place_df['place_id'] == pid]['weather'].item() person_df['weather'] = person_df['place_id'].map(place_id_to_weather)`但这是无法缓慢的.我想加快速度.我怀疑我...

Python pandas dataframe:为另一列的每个唯一值找到max【代码】

我有一个大型数据帧(从500k到1M行),其中包含例如这3个数字列:ID,A,B 我想过滤结果,以获得如下图所示的表,其中,对于列id的每个唯一值,我有A和B的最大值和最小值.我能怎么做? 编辑:我更新了下面的图像,以便更清楚:当我从列中获得最大值或最小值时,我还需要获取与其他列相关的数据 解决方法:示例数据(请注意,您发布了一个图像,潜在的回答者无法使用该图像而无需重新输入,因此我在其中制作了一个简单的示例):df=pd.DataFrame({ 'i...

python – Pandas – 基于Boollean DataFrame替换DataFrame中的值【代码】

我正在使用Pandas v0.20.2并且我有DataFrame,如下所示:df = pd.DataFrame(dict(a=[0,1], b=[3,4], c=[6,7]), index=['spam', 'ham']) # a b c # spam 0 3 6 # ham 1 4 7我有另一个掩码的DataFrame:mask = pd.DataFrame(dict(a=[True,False], b=[True,True]), index=['spam', 'ham']) # a b # spam True True # ham False True我想将df中的值设置为等于999,其中掩码中为True. 我认为以下内容可...

python – 计算由长度不等的索引的二维列表给出的DataFrame行组的平均值【代码】

我有一个有n行的DataFrame.我还有一个二维索引数组.该数组也有n行,但每行的长度可以变化.我需要根据索引对DataFrame行进行分组并计算列的平均值. 例如: 如果我有DataFrame df和array ind,我需要得到 [df.loc [ind [n],col_name] .mean()for n in ind]. 我已经使用apply pandas函数实现了这个:size = 100000 df = pd.DataFrame(columns=['a']) df['a'] = np.arange(size) np.random.seed(1) ind = np.array([np.random.randint(0,...

python – 加入两个没有公共列的DataFrame进行计算【代码】

我正在尝试根据我在两个不同数据集中的信息进行计算.我需要第一个数据帧的所有信息重复与第二个数据帧的信息一样多次. 例: DataFrame 1:name price A 1B 2DataFrame 2:currency valueDollar 1Euro 2 预期产量: DataFrame合并:name price currency ValueA 1 Dollar 1A 1 Euro 1B 2 Dollar 4B 2 Euro 4我一直在...

python – 计算两个Dataframe列之间的组合【代码】

我想重新格式化一个数据帧,以便显示两列组合的计数.这是一个示例数据帧:my_df = pd.DataFrame({'a': ['first', 'second', 'first', 'first', 'third', 'first'],'b': ['foo', 'foo', 'bar', 'bar', 'baz', 'baz'],'c': ['do', 're', 'mi', 'do', 're', 'mi'],'e': ['this', 'this', 'that', 'this', 'those', 'this']})看起来像这样:a b c e 0 first foo do this 1 second foo re this 2 first bar mi ...

python – pandas.DataFrame列中值组合的可能性【代码】

我的DataFrame表示每列中的属性,如果适用,则表示每行中的是/否值:d_att = { 'attribute1': ['yes', 'yes', 'no'],'attribute2': ['no', 'yes', 'no'],'attribute3': ['no', 'no', 'yes'] }df_att = pd.DataFrame(data=d_att) df_attattribute1 attribute2 attribute3 0 yes no no 1 yes yes no 2 no no yes现在我需要计算每个属性组合的可能性,例如如果attribute1为y...

python – 从Pandas.DataFrame中的时间戳位置计算速度【代码】

我对Pandas很新,但熟悉Numpy和Python. 假设我有一个X的“Pandas.DataFrame”,Y点(float64)由时间(日期时间)索引,我怎么能从中进行pythonically计算速度,假设我已经知道如何计算点之间的欧氏距离? 编辑:我刚刚阅读了关于pandas.Series.diff()的帮助,但我仍然想用另一个函数“替换”diff上使用的减法,比如说’euclidean_distance()’.有没有办法做到这一点? DataFrame看起来像(第一列中的索引,第二列中的位置):2009-08-07 16:16:...