我正在尝试使用pip3
命令安装依赖项
当前情况:
Dev$ which python
/Users/Dev/anaconda/bin/python
Dev$ which python3
/usr/local/bin/python3
Dev$ pip --version
pip 10.0.1 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)
Dev$ pip3 --version
-bash: /usr/local/bin/pip3: /usr/local/opt/python3/bin/python3.6: bad
interpreter: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我不知道为什么我的pip3
命令不起作用.
我尝试过这样的事情:
brew link --overwrite python
Run Code Online (Sandbox Code Playgroud) 在这个问题中,我的目标是在导出到时保留最后一个 尾随 zeros
DataFrame
CSV
我的dataset
看起来像这样:
EST_TIME Open High
2017-01-01 1.0482 1.1200
2017-01-02 1.0483 1.1230
2017-01-03 1.0485 1.0521
2017-01-04 1.0480 1.6483
2017-01-05 1.0480 1.7401
...., ...., ....
2017-12-31 1.0486 1.8480
Run Code Online (Sandbox Code Playgroud)
我通过执行以下操作导入并创建 DataFrame 并保存到 CSV:
df_file = '2017.csv'
df.to_csv(df_file, index=False)
files.download(df_file)
Run Code Online (Sandbox Code Playgroud)
当我查看 CSV 时,我看到以下内容:
EST_TIME Open High
2017-01-01 1.0482 1.12
2017-01-02 1.0483 1.123
2017-01-03 1.0485 1.0521
2017-01-04 1.048 1.6483
2017-01-05 1.048 1.7401
...., ...., ....
2017-12-31 1.0486 1.848
Run Code Online (Sandbox Code Playgroud)
末尾的所有零都消失了。我想在保存 CSV 时保留尾随零,并且希望它位于小数点后 4 位。
您能让我知道如何实现这一目标吗?
我的数据集df
如下所示:
time high low offset
2017-01-01 1.012 0.921 NaN
2017-01-02 1.019 0.934 NaN
2017-01-03 1.213 NaN 0.982
2017-01-04 1.112 0.965 NaN
Run Code Online (Sandbox Code Playgroud)
这里,要么low
value isNaN
要么offset
value isNaN
但不能同时存在
我想创建一个名为的新专栏low_offset_merge
这样将包含和low_offset_merge
的合并值,并且都将具有值 和 no ,如下所示:low
offset
number
NaN
time high low offset low_offset_merge
2017-01-01 1.012 0.921 NaN 0.921
2017-01-02 1.019 0.934 NaN 0.934
2017-01-03 1.213 NaN 0.982 0.982
2017-01-04 1.112 0.965 NaN 0.965
Run Code Online (Sandbox Code Playgroud)
我做了什么?
- First, check if `low` has `NaN` values …
Run Code Online (Sandbox Code Playgroud) 我df
看起来像这样 它是一个hourly
数据集。
time Open
2017-01-03 09:00:00 5.2475
2017-01-03 08:00:00 5.2180
2017-01-03 07:00:00 5.2128
2017-01-02 09:00:00 5.4122
2017-01-02 08:00:00 5.2123
2017-01-02 07:00:00 5.2475
2017-01-01 09:00:00 5.2180
2017-01-01 08:00:00 5.2128
2017-01-01 07:00:00 5.4122
Run Code Online (Sandbox Code Playgroud)
我想sort
了hourly
由唯一的数据ascending
顺序。
我做了什么
我做了:
df.sort_values(by='time', ascending=True)
Run Code Online (Sandbox Code Playgroud)
但它的sort
全部价值time
不过我只想看sort
一下time
。
我的新人df
应该是这样的:
time Open
2017-01-03 07:00:00 5.2475
2017-01-03 08:00:00 5.2180
2017-01-03 09:00:00 5.2128
2017-01-02 07:00:00 5.4122
2017-01-02 08:00:00 5.2123
2017-01-02 09:00:00 5.2475
2017-01-01 07:00:00 …
Run Code Online (Sandbox Code Playgroud) 我不能肯定地说这是最快的方法:
i = -1
for j in xrange(n):
i = x.index(True, i + 1)
Run Code Online (Sandbox Code Playgroud)
x
:这里的布尔值列表
n
: 出现次数
True
: 搜索到的元素
在上面的代码中,i = x.index(True, i + 1)
到底做了什么?
具体来说,第二个参数的作用是什么i + 1
?
我在 上找不到任何具有多个参数的示例list.index()
。
编辑:我正在使用 Python 2.7
(Not duplicate question
)
我的数据集df
如下所示:
time Open
2017-01-01 00:00:00 5.2475
2017-01-01 01:00:00 5.2180
2017-01-01 02:00:00 5.2128
...., ....
2017-12-31 23:00:00 5.7388
Run Code Online (Sandbox Code Playgroud)
这是一个hourly
数据集。
我想按+1
递增顺序将值乘以10个值,然后取summation
这些值。
例如:
1st value
是multiplied
由1
2nd value
是multiplied
由2
10th value
乘以10
,然后在上11th value
重复1
以此类推。value1 + ... + value10
我做了什么
我差点只将每个值乘以相同的数字,如下所示:
df['Open_Multiply'] = df['Open'] * 1 # Number to multiply
Run Code Online (Sandbox Code Playgroud)
但我无法进行迭代和增量计算。我可以用,Python
但还不能用Pandas
。 …
我的数据集df
如下所示:
date high
2018-01-01 -1
2018-01-02 1
2018-01-03 -2
2018-01-04 0
...., ....
2018-12-31 1
Run Code Online (Sandbox Code Playgroud)
在哪里,
-2 >= high <= 2
Run Code Online (Sandbox Code Playgroud)
high
总是介于-2
和之间2
我想high
按以下模式对 的值进行排序:
首先,对所有0
值进行分组并按日期排序等其他值。
按high
以下顺序对值进行排序:
0
1
-1
2
-2
Run Code Online (Sandbox Code Playgroud)
如果它足够灵活,我可以在需要时更改订单,那将是最好的。
我知道如何排序asc
或desc
这样做:
df.sort_values(by='high', ascending=False)
Run Code Online (Sandbox Code Playgroud)
你能帮我解决如何使用预定值进行排序吗?