我是Pandas的新手,我已经尝试过搜索,但我找不到解决方案。我有一个数据框,里面有Transaction-No,customerId和购买日期,看起来像这样: Transaction 12345 12346 12347 12348 12349
customerID
1 NaN 2019-09-01 NaN 2019-09-11 2019-09-22...
2 2019-10-01 NaN NaN NaN 2019-10-07...
3
同样的问题也发布在pydata google group上。
我想做一个自定义的连接,即使用group by对象中的行来创建新的cols。
下面是一个人为设计的例子:
Input data frame
name age
foo 12
bar 14
df = pandas.DataFrame({ 'name':['foo','bar'],'age': [12,14] })
expected output, a pandas data frame with four cols
foo 12 bar 14
P
这个问题很像是Pandas pivot or reshape dataframe with NaN的后续问题 解码视频时,一些帧丢失,需要对数据进行插值 当前df frame pvol vvol area label
0 NaN 109.8 120 v
2 NaN 160.4 140 v
0 23.1 NaN 110 p
1 24.3 NaN 110 p
2 25.6 NaN 112 p 预期的df fra
我有一个关于将几个数组组合成一个数组的问题。我有一个长度为1000的列表,在列表的每个元素中有16个维度为100的数组,我想要实现的是一个包含1000个元素的列表,每个元素都有一个维度为1600的数组。如何实现这一点:我尝试了以下方法:返回16'000 x 100维度的x=np.concetate(x, axis=0)和返回16 x 100'000维度的x=np.concetate(x, axis=1)。我还尝试了x=np.vstack和x=np.hstack,但我自己无法获得它。有人能帮帮我吗? 谢谢! 编辑:最小工作样本: 我有类似这样的东西,首先是数据帧 Date
我有一份数据帧列表。列表中的每个数据帧都是唯一的-这意味着有一些共享但不同的列。我想创建一个dataframe,它包含来自dataframe列表的所有列,如果元素不存在,将填充NaN。我尝试过以下几种方法
import pandas as pd
df_new = pd.concat(list_of_dfs)
#I get the following: InvalidIndexError: Reindexing only valid with uniquely valued Index objects
问题似乎是由于列表中的数据帧造成的。每个数据帧只有一行,所以它的索引是零,因此重新索引不会起到
我在pandas中运行了一个很长的ETL管道。我必须创建不同的pandas数据帧,并且我想为一些数据帧释放内存。 我一直在阅读如何释放内存,我发现运行此命令不会释放内存: del dataframe 下面是这个链接:How to delete multiple pandas (python) dataframes from memory to save RAM?,其中一个答案说del语句并不删除实例,它只是删除了一个名称。 在答案中,他们说将数据帧放在列表中,然后删除列表: lst = [pd.DataFrame(), pd.DataFrame(), pd.DataFrame()]
del
假设我有一个Panda DataFrame,它看起来如下:
输入
Name Key Val
David A 1
Roe B 2
John A 3
Nat B 4
我想按键拆分,按名称分组。
输出
Name A B
David 1 nan
John 3 nan
Nat nan 4
Roe nan 2
你能建议一下做这件事的方法吗?
下面是生成数据帧的代码。
import pandas as pd
# Initializing the nested list with Data-set
data = [
我正在试着写一些能做以下事情的东西: 读取超过1m行、100列数据的CSV;按照从最大行到最少行的顺序列出重复行的出现情况来总结每列 到目前为止,我所拥有的: import pandas as pd
df = pd.read_csv (r'infile.csv')
outfile = ('outfile.csv')
for i in df:
df.pivot_table(index=i, aggfunc='size').to_csv(outfile, mode='a') 下面的代码输出如下: ColumnA,0
as
假设我有一个一维数组:
import numpy as np
my_array = np.arange(0,10)
my_array.shape
(10, )
在Pandas中,我想使用这个数组创建一个只有一行和10列的DataFrame。FOr示例:
import pandas as pd
import random, string
# Random list of characters to be used as columns
cols = [random.choice(string.ascii_uppercase) for x in range(10)]
但当我尝试时:
pd.Data
我有一个如下格式的Pandas数据帧 CLASS 1 CLASS 2 CLASS 3 CLASS 4 CLASS 5 CLASS 6 CLASS 7 CLASS 8 CLASS 9 CLASS 10 CLASS 11 CLASS 12 CLASS 13 CLASS 14 CLASS 15 CLASS 16 CLASS 17 CLASS E CLASS V
0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 1 0 0
我有几个人(Person 1,2,3,4,5)和几个组(groups,B,C)的python数据。我有一个个人和组的初始状态(time == 0)的表(目前是pandas数据帧):
Person | Group
-------|-------
1 | A
2 | A
3 | C
4 | B
5 | B
还有一张表(也是一张pandas DF),上面有人在换组。该表包括人员、他们的新组和变更时间。
Person | New Group | Time
-------|-----------|------
1 | B