相关疑难解决方法(0)

如何制作好的可重复的熊猫示例

花了相当多的时间观察SO上的标签,我得到的印象是pandas问题不太可能包含可重现的数据.这是值得的R社会一直要鼓励不错,并感谢像导游这样,新人能得到放在一起,这些例子一些帮助.能够阅读这些指南并返回可重现数据的人通常会更好地获得他们问题的答案.

我们如何为pandas问题创建良好的可重复示例?简单的数据帧可以放在一起,例如:

import pandas as pd
df = pd.DataFrame({'user': ['Bob', 'Jane', 'Alice'], 
                   'income': [40000, 50000, 42000]})
Run Code Online (Sandbox Code Playgroud)

但是许多示例数据集需要更复杂的结构,例如:

  • datetime 指数或数据
  • 多个分类变量(是否等价于R的expand.grid()函数,它会产生某些给定变量的所有可能组合?)
  • MultiIndex或Panel数据

对于dput()难以使用几行代码进行模拟的数据集,是否有与R相当的R ,它允许您生成可复制粘贴的代码以重新生成数据结构?

python pandas

222
推荐指数
5
解决办法
2万
查看次数

Pandas:如何使用 df.to_dict() 轻松共享示例数据帧?

这个问题早些时候被标记为如何制作好的可重复的熊猫示例的副本。对于任何寻求制作此类可重复数据样本的人来说,该贡献无疑应该是首选帖子,而这篇文章旨在阐明一种非常实用且有效的方法,将给定的数据样本包含df.to_dict()在与df=pd.DataFrame(<dict>). How to make good reproducible pandas examples 中的问题和答案都没有明确涵盖这一点。Usingdf.to_dict()也可以很好df.to_clipboard()地与 结合使用,在文章How to provide a reproducible copy of your DataFrame with to_clipboard()中进行了简明扼要的介绍


尽管有关于如何提出好问题的清晰简明的指导以及如何创建最小的、可重现的示例,许多人似乎只是忽略了在他们的问题中包含可重现的数据样本。那么,当简单pd.DataFrame(np.random.random(size=(5, 5)))还不够时,有什么实用且简单的方法来重现数据样本呢?例如,您如何使用df.to_dict()并将输出包含在问题中?

python pandas plotly

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

Spyder 未显示变量资源管理器中的每个变量

因为我在谷歌上没有找到与我的“问题”相关的任何内容,所以我在这里问大家。我正在使用 Spyder IDE 通过 Python 3.7 进行科学编码,我的问题是 Spider 没有在变量资源管理器中显示数据框变量。\n例如:

\n
 word_mi_information.append([average, max_mi, class_name[max_index], vocab_list[w_index]])\n    \nword_mi_information = sorted(word_mi_information, key=lambda x: x[0], reverse=True)\n\npreview3 = pd.DataFrame(word_mi_information)\npreview3.columns=['mutual information(MI)', 'main class MI', 'main_class', 'word']\n\npreview3.head(10)\n\n#the expected output \n\n\n    Info Gain                 main class        info main_class                                 word\n0   4473.658680600584   24124.9834859362     ('C:/Users/user/Desktop/Akhbarona\\\\Tech', '', '')  \xd9\x87\xd8\xaa\xd9\x81\n1   4154.761699928653   20292.13826441525   ('C:/Users/user/Desktop/Akhbarona\\\\Tech', '', '')   \xd8\xae\xd8\xaf\xd9\x85\n2   4082.1526400011394  21332.74626781158   ('C:/Users/user/Desktop/Akhbarona\\\\Tech', '', '')   \xd8\xb4\xd8\xb1\xd9\x83\n3   3907.930114110117   7164.627960061558   ('C:/Users/user/Desktop/Akhbarona\\\\Politics', '', '')   \xd8\xba\xd8\xb1\xd8\xa8\n4   3487.537345717307   17568.034002235207  ('C:/Users/user/Desktop/Akhbarona\\\\Medical', '', '')    \xd8\xac\xd8\xb3\xd9\x85\n5   3469.0442804650042  17593.549747242403  ('C:/Users/user/Desktop/Akhbarona\\\\Medical', '', '')    \xd9\x86\xd9\x88\xd9\x84\n6   3398.1096950558563  17168.788976051695  ('C:/Users/user/Desktop/Akhbarona\\\\Medical', '', '') …
Run Code Online (Sandbox Code Playgroud)

python dataframe

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

大熊猫按群体划分年龄

我对熊猫很陌生,需要一些帮助。我有一个包含年龄的列,需要对这些进行分组:\n年轻人:年龄\xe2\x89\xa430\n中年人:30<年龄\xe2\x89\xa460\n老年人:60<年龄\n这里是代码,但它给了我一个错误:

\n
def get_num_people_by_age_category(dataframe):\n    young, middle_aged, old = (0, 0, 0)\n    dataframe["age"] = pd.cut(x=dataframe[\'age\'], bins=[30,31,60,61], labels=["young","middle_aged","old"])\n    return young, middle_aged, old\nages = get_num_people_by_age_category(dataframe) \nprint(dataframe)\n
Run Code Online (Sandbox Code Playgroud)\n

grouping split pandas

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

如何获取 pandas df 中日期时间的最大值和最小值?

我正在使用 pandas 探索一些数据(我使用 read_excel 从 excel 导入数据集)。

我的其中一列是日期时间...我如何为此日期时间列选择“最大”和“最小”?

这与这里是同一个问题:

从 pandas 数据框中获取最小和最大日期

但是,那里没有回答...我的日期时间列不是我的索引(我只有默认索引 0,1,2,3...)

我尝试过使用,max(df['creation_date'])但我认为它无法识别日期,我明白了

'2020年10月31日 22:33:10'

(在数据集中我也有 2021 年的日期时间......)

如何选择最大和最小日期?我是否必须将我的日期作为我的索引才能实现它?

(我来自 sql 背景...当我执行 df.info() 时,Dtype 是日期时间的对象,我可以将数据帧的列的数据类型更改为日期时间吗?)

python pandas

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

使用pd.read_clipboard复制数据帧时如何处理自定义命名索引?

鉴于来自其他一些问题的数据框架:

         Constraint Name    TotalSP       Onpeak    Offpeak
Constraint_ID               
77127   aaaaaaaaaaaaaaaaaa  -2174.5     -2027.21    -147.29
98333   bbbbbbbbbbbbbbbbbb  -1180.62    -1180.62     0
1049    cccccccccccccccccc  -1036.53    -886.77     -149.76
Run Code Online (Sandbox Code Playgroud)

好像有一个索引Constraint_ID.当我尝试用它读取时pd.read_clipboard,这就是它的加载方式:

      Constraint                Name  TotalSP   Onpeak  Offpeak
0  Constraint_ID                 NaN      NaN      NaN      NaN
1          77127  aaaaaaaaaaaaaaaaaa -2174.50 -2027.21  -147.29
2          98333  bbbbbbbbbbbbbbbbbb -1180.62 -1180.62     0.00
3           1049  cccccccccccccccccc -1036.53  -886.77  -149.76
Run Code Online (Sandbox Code Playgroud)

这显然是错误的.我怎么能纠正这个?

python clipboard dataframe pandas

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

使用pd.read_clipboard指定多级列?

以下是另一个问题的一些数据:

main    Meas1     Meas2 Meas3   Meas4  Meas5
sublvl  Value     Value Value   Value   Value       
count   7.000000  1.0   1.0     582.00  97.000000       
mean    30        37.0  26.0    33.03   16.635350
Run Code Online (Sandbox Code Playgroud)

我想以这样的方式读取这些数据:第一列实际上是索引,前两行被视为多级列,其中MeasX第一级是第一级,Value是第二级.

我怎么能用这个pd.read_clipboard呢?


我的pd.read_clipboard系列:

python dataframe pandas

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

即使在熊猫中没有值时也创建额外的行

我有一个看起来像这样的数据框:

Person  Day  Value
 1      Mon   32
 1      Tue   30
 1      Wed   34
 1      Thu   22
 1      Fri   43
 2      Mon   22
 2      Wed   14
 2      Fri   11
 3      Tue   13
 3      Wed   22
 3      Thu   23
Run Code Online (Sandbox Code Playgroud)

该数据集查看一组人每个工作日(周一至周五)的值。有些人有整整 5 天(例如第 1 个人),有些人只有几天。我想创建新的空行,以便每个人都有完整的 5 天,即使他们没有价值。

这是我想要的输出:

Person  Day  Value
 1      Mon   32
 1      Tue   30
 1      Wed   34
 1      Thu   22
 1      Fri   43
 2      Mon   22
 2      Tue   Nan
 2      Wed   14
 2      Thu   Nan
 2      Fri   11
 3      Mon …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

如何在 Python 中从 CSV 文件制作图表?

这是我第一次在这个论坛上提问,希望不要出丑。我是一名 IT 教育专业的学生,​​今天向我简要介绍了 CSV 和 Matplotlib 库。任务是制作一个图表/图表,显示该 CSV 文件中的最高和最低温度以及相应的日期。我需要行号,并且需要程序来理解单元格的正确格式/语法,但我真的不知道如何做。

此处的 CSV 文件示例:"STATION","NAME","DATE","PRCP","TMAX","TMIN","TOBS" "USC00042319","DEATH VALLEY, CA US","2018-01- 01","0.00","65","34","42" "USC00042319","死亡谷,美国加利福尼亚州","2018-01-02","0.00","61","38", "46" "USC00042319","美国加利福尼亚州死亡谷","2018-01-03","0.00","69","34","54" "USC00042319","美国加利福尼亚州死亡谷", "2018-01-04","0.00","69","39","48" "USC00042319","死亡谷,美国加利福尼亚州","2018-01-05","0.00","74" ,"40","57" "USC00042319","死亡谷,美国加利福尼亚州","2018-01-06","0.00","74","47","65" "USC00042319","死亡谷,美国加利福尼亚州”,“2018-01-07”,“0.00”,“77”,“54”,“60”“USC00042319”,“死亡谷,美国加利福尼亚州”,“2018-01-08”,“0.07 ","62","52","52" "USC00042319","死亡谷,美国加利福尼亚州","2018-01-09","0.40","60","51","51" "USC00042319 ","美国加利福尼亚州死亡谷","2018-01-10","0.00","64","49","50"

这就是我得到的:

import csv
import matplotlib.pyplot as plt

filename = 'death_valley_2018_simple.csv'
with open(filename) as f:
    csv_reader = csv.reader(f, delimiter=',')
    line_count = 0

    for row in f:
        x=(row[4], row[5])
        y=(row[2])
        print(row[2])
        print(row[4])
        print(row[5])

plt.bar(x,y)
plt.xticks(y)
plt.ylabel('Dates')
plt.title('Plot')
plt.show()
Run Code Online (Sandbox Code Playgroud)

结果是这个“条形图” 我从这里阅读了其他论坛帖子,在 Discord 上询问并阅读了 CSV 文档。也许答案就在那里,但我当时不明白。我希望有人能像我 5 岁一样向我解释这一点。

python csv diagram graph matplotlib

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

标签 统计

python ×8

pandas ×7

dataframe ×3

clipboard ×1

csv ×1

diagram ×1

graph ×1

grouping ×1

matplotlib ×1

plotly ×1

split ×1