小编ben*_*121的帖子

如果length小于x,则替换string

我有一个数据框如下.

a = {'Id': ['ants', 'bees', 'cows', 'snakes', 'horses'], '2nd Attempts': [10, 12, 15, 14, 0],
     '3rd Attempts': [10, 10, 9, 11, 10]}
a = pd.DataFrame(a)
print (a)
Run Code Online (Sandbox Code Playgroud)

我希望能够将文本('-s')添加到等于4个字符的任何内容中.我没有成功尝试以下.因为它产生错误,ValueError:系列的真值是不明确的.使用a.empty,a.bool(),a.item(),a.any()或a.all().

if a['Id'].str.len() == 3:
    a['Id'] = a['Id'].str.replace('s', '-s')
else:
    pass
Run Code Online (Sandbox Code Playgroud)

python string replace conditional-statements pandas

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

大熊猫切了多个栏目

我希望在多个列中应用bin.

a = [1, 2, 9, 1, 5, 3]
b = [9, 8, 7, 8, 9, 1]

c = [a, b]

print(pd.cut(c, 3, labels=False))
Run Code Online (Sandbox Code Playgroud)

哪作得很好并创造:

[[0 0 2 0 1 0]
[2 2 2 2 2 0]]
Run Code Online (Sandbox Code Playgroud)

但是,我想应用'cut'来创建一个带数字的数据框,并将其加入如下.

   Values  bin
0       1    0
1       2    0
2       9    2
3       1    0
4       5    1
5       3    0


   Values  bin
0       9    2
1       8    2
2       7    2
3       8    2
4       9    2
5       1    0 
Run Code Online (Sandbox Code Playgroud)

这是我想要做的一个简单的例子.实际上,我有63个独立的数据帧,而a&b是来自每个数据帧的列的示例.

python pandas

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

熊猫过滤季度结束日期

在索引列中,我有一个日期列表:

DatetimeIndex(['2010-12-31', '2011-01-02', '2011-01-03', '2011-01-29',
           '2011-02-26', '2011-02-28', '2011-03-26', '2011-03-31',
           '2011-04-01', '2011-04-03',
           ...
           '2016-02-27', '2016-02-29', '2016-03-26', '2016-03-31',
           '2016-04-01', '2016-04-03', '2016-04-30', '2016-05-31',
           '2016-06-30', '2016-07-02'],
          dtype='datetime64[ns]', length=123, freq=None)
Run Code Online (Sandbox Code Playgroud)

但是,我想过滤掉所有月份和日期等于12/31,3/31,6/30,9/30的那些,以获得该季度末的价值.

有没有好办法解决这个问题?

python datetime pandas

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

熊猫在日期范围内合并

我有两个数据框,

df = pd.DataFrame({'Date': ['2011-01-02', '2011-04-10', '2015-02-02', '2016-03-03'], 'Price': [100, 200, 300, 400]})

df2 = pd.DataFrame({'Date': ['2011-01-01', '2014-01-01'], 'Revenue': [14, 128]})
Run Code Online (Sandbox Code Playgroud)

我想将 df2.revenue 添加到 df 以使用两个日期列生成下表以供参考。

Date         Price      Revenue
2011-01-02   100        14
2011-04-10   200        14
2015-02-02   300        128
2016-03-03   400        128
Run Code Online (Sandbox Code Playgroud)

如上所述,收入是根据 df2.Date 和 df.Date 添加的

python pandas

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

RASA - rasa 运行操作 - 本地主机问题

我正在使用 RASA 大师班 YouTube 频道学习 Rasa。https://www.youtube.com/channel/UCJ0V6493mLvqdiVwOKWBODQ

一切都一直有效,直到进行加载操作为止。每次我在命令提示符中使用 rasa run 操作(两个操作中的第一个)时,程序都会卡住,我必须手动终止它。当我使用 rasa shell --endpoints endpoints.yml 时,机器人可以正常工作,因为当我添加自定义操作时,我不断遇到服务器返回的无法连接到本地主机的情况,如下面的示例所示。问题是我如何解决这个问题。

*请索取更多信息

:在此输入图像描述

我的 actions.py 如下所示:

from typing import Any, Text, Dict, List

from rasa_sdk import Action, Tracker
from rasa_sdk.executor import CollectingDispatcher
from rasa_sdk.events import SlotSet



class ActionFacilitySearch(Action):

    def name(self) -> Text:
        return "action_facility_search"

    def run(self, dispatcher: CollectingDispatcher,
            tracker: Tracker,
            domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:

        facility = tracker.get_slot("facility_type")
        address = "300 Hyde St, San Francisco"
        dispatcher.utter_message("Here is the address of the {}:{}".format(facility, address))

        return …
Run Code Online (Sandbox Code Playgroud)

python rasa-core rasa

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

使用Seaborn绘制单个数据点

我正在使用seaborn创建箱线图。但是,我如何添加一条线或单个点以在图表上显示单个数据值。例如,我将如何在下图上绘制值3.5。

import seaborn as sns
import matplotlib.pyplot as plt

df1 = [2.5, 2.5, 2, 3, 4, 3.5]
sns.set_style("whitegrid")
fig, ax = plt.subplots(figsize=(8,8))
plot1 = sns.boxplot(ax=ax, x=df1, linewidth=5)
Run Code Online (Sandbox Code Playgroud)

python pandas seaborn

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