小编the*_*ond的帖子

从列 DataFrame 中的不同值创建索引/行

我真的不知道如何给出一个好的描述性标题,但这是我的问题。让我们考虑一个 DataFrame df

     col_name
0    Category1
1     item1()
2     item2()
3    Category2
4     item3()
5     item4()
6     item5()
Run Code Online (Sandbox Code Playgroud)

我需要得到这个:

     categories   items
0     Category1   item1
1     Category1   item2
2     Category2   item3
3     Category2   item4
4     Category2   item5

Run Code Online (Sandbox Code Playgroud)

categories可能是大陆,items也可能是国家。我知道所有的项目()里面都有一个表达式,所以我可以很容易地提供一个布尔掩码,然后创建一个列表categories

msk = df[~df['col_name'].str.contains('[^A-Za-z\s]')]['col_name'].tolist()

但是现在,现在我被困住了。你能给我一些建议吗?

python dataframe pandas

4
推荐指数
1
解决办法
46
查看次数

GGplot2 facet_wrap() 对每个变量进行缩放

我有一个data包含 9 个预测变量和一个ind值为 0 到 3 的指示变量的数据框。我需要为给定值为 的所有变量制作直方图ind。我已经写了一些代码;没有更好的主意,我只是将数据集分为 4 个不相交的子集。

data_no0 <- data[data$ind == 0, -1]
data_no1 <- data[data$ind == 1, -1]
data_no2 <- data[data$ind == 2, -1]
data_no3 <- data[data$ind == 3, -1]

ggplot(gather(data_no1), aes(value)) + 
  geom_histogram(bins = 6) + 
  facet_wrap(~key, scales = 'free_x')
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

更重要的是,我希望能够比较不同值的直方图ind,因此我想分别将 x 的最小值和最大值固定为(即第一个变量)min(data$avg_f0env_sma0)max(data$avg_f0env_sma)

我尝试这样做:

scales_x <- list(
  'avg_jitterlocal_sma' 
  = scale_y_continuous(limits = c(min(data$avg_jitterlocal_sma), max(data$avg_jitterlocal_sma))),
  'avg_jitterddp_sma' 
  = scale_y_continuous(limits = c(min(data$avg_jitterddp_sma), max(data$avg_jitterddp_sma))),
  'avg_shimmerlocal_sma' 
  = scale_y_continuous(limits …
Run Code Online (Sandbox Code Playgroud)

r histogram ggplot2

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

标签 统计

dataframe ×1

ggplot2 ×1

histogram ×1

pandas ×1

python ×1

r ×1