相关疑难解决方法(0)

将pandas数据帧字符串条目拆分(爆炸)到单独的行

我有pandas dataframe一列文本字符串包含逗号分隔值.我想拆分每个CSV字段并为每个条目创建一个新行(假设CSV是干净的,只需要在','上拆分).例如,a应该成为b:

In [7]: a
Out[7]: 
    var1  var2
0  a,b,c     1
1  d,e,f     2

In [8]: b
Out[8]: 
  var1  var2
0    a     1
1    b     1
2    c     1
3    d     2
4    e     2
5    f     2
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经尝试了各种简单的函数,但是.apply当在轴上使用时,该方法似乎只接受一行作为返回值,而我无法.transform工作.我们欢迎所有的建议!

示例数据:

from pandas import DataFrame
import numpy as np
a = DataFrame([{'var1': 'a,b,c', 'var2': 1},
               {'var1': 'd,e,f', 'var2': 2}])
b = DataFrame([{'var1': 'a', 'var2': 1},
               {'var1': 'b', 'var2': 1},
               {'var1': 'c', …
Run Code Online (Sandbox Code Playgroud)

python numpy dataframe pandas

170
推荐指数
9
解决办法
9万
查看次数

如何在pandas DataFrame中删除(爆炸)列?

我有以下DataFrame,其中一列是一个对象(列表类型单元格):

df=pd.DataFrame({'A':[1,2],'B':[[1,2],[1,2]]})
df
Out[458]: 
   A       B
0  1  [1, 2]
1  2  [1, 2]
Run Code Online (Sandbox Code Playgroud)

我的预期输出是:

   A  B
0  1  1
1  1  2
3  2  1
4  2  2
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能做到这一点?


相关问题

pandas:当单元格内容是列表时,为列表中的每个元素创建一行

好的问题和答案,但只处理一列列表(在我的回答中,自我修复功能将适用于多列,也接受的答案是使用最耗时apply,不推荐,检查更多信息我应该什么时候想要在我的代码中使用pandas apply()?)

python dataframe pandas

76
推荐指数
5
解决办法
1万
查看次数

我什么时候应该在我的代码中使用pandas apply()?

这是一个自我回答的QnA,旨在指导用户应用的缺陷和好处.

我已经看到很多关于Stack Overflow问题的答案涉及使用apply.我也看到用户评论他们说" apply很慢",应该避免".

我已经阅读了很多关于性能主题的文章,解释apply很慢.我还在文档中看到了一个关于如何apply简单地传递UDF的便利函数的免责声明(现在似乎无法找到).因此,普遍的共识是,apply如果可能,应该避免.但是,这引发了以下问题:

  1. 如果apply是如此糟糕,那为什么它在API中呢?
  2. 我应该如何以及何时制作我的代码apply- 免费?
  3. 是否有过任何地方的情况apply不错的(比其他可能的解决方案更好)?

python performance apply pandas

68
推荐指数
3
解决办法
8380
查看次数

"unstack"包含多行列表的pandas列

假设我有以下Pandas Dataframe:

df = pd.DataFrame({"a" : [1,2,3], "b" : [[1,2],[2,3,4],[5]]})
   a          b
0  1     [1, 2]
1  2  [2, 3, 4]
2  3        [5]
Run Code Online (Sandbox Code Playgroud)

我如何"取消堆叠""b"列中的列表以将其转换为数据帧:

   a  b
0  1  1
1  1  2
2  2  2
3  2  3
4  2  4
5  3  5
Run Code Online (Sandbox Code Playgroud)

python list dataframe pandas

16
推荐指数
1
解决办法
7750
查看次数

将正在运行的ipython笔记本与进程匹配

我的服务器运行许多长时间运行的笔记本电脑,我想监控笔记本电脑的内存.

有没有办法在pid或进程名称和笔记本之间进行匹配?

ipython ipython-notebook

11
推荐指数
4
解决办法
3939
查看次数

将包含列表的列拆分为熊猫中的不同行

我在熊猫中有一个像这样的数据框:

id     info
1      [1,2]
2      [3]
3      []
Run Code Online (Sandbox Code Playgroud)

我想把它分成不同的行,如下所示:

id     info
1      1 
1      2 
2      3 
3      NaN
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

python dataframe pandas

9
推荐指数
1
解决办法
9923
查看次数