小编Ama*_*ora的帖子

在Java中查找字符串中第二次出现的子字符串

比方说,我们给了一个字符串,比如"itiswhatitis"一个子字符串"is".我需要在原始字符串中找到第二次出现'i'字符串的索引"is".

String.indexOf("is")在这种情况下将返回2.在这种情况下,我希望输出为10.

java string substring indexof

58
推荐指数
3
解决办法
11万
查看次数

paras数据帧中的对数返回

Python pandas有一个pct_change函数,我用它来计算数据帧中股票价格的回报:

ndf['Return']= ndf['TypicalPrice'].pct_change()
Run Code Online (Sandbox Code Playgroud)

我使用以下代码获取对数返回,但它提供与pct.change()函数完全相同的值:

ndf['retlog']=np.log(ndf['TypicalPrice'].astype('float64')/ndf['TypicalPrice'].astype('float64').shift(1))
#np is for numpy
Run Code Online (Sandbox Code Playgroud)

python pandas

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

大多数重复字符串中的字符

我们给出了一个字符串,例如,取"TUOPPPPJHHTT"我们希望找出哪个字符连续出现在字符串中的次数和次数.在这种情况下,其P发生4次.

我尝试运行for循环如下

char[] array = S.toCharArray();
int count=1;
for(int i =1; i < S.length(); i++) {
    if(array[i] == array[i-1]) {
        count++;
    }
}
Run Code Online (Sandbox Code Playgroud)

但在这种方法中,问题是它将计算所有字母表的重复出现次数.

java string

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

StringIndexOutOfBoundsException字符串索引超出范围错误

在输入整数后输入字符串"s"时出现此错误.

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
    at java.lang.String.charAt(Unknown Source)
    at oneB.change(oneB.java:4)
    at oneB.main(oneB.java:26)
Run Code Online (Sandbox Code Playgroud)

以下是代码:(请注意代码仍然完整,我已经输入了一些打印语句进行检查)

import java.util.Scanner;
public class oneB {
    public static String change(int n, String s, String t) {

        if (s.charAt(0) == 'R') {
            return onetwo(s);
        }
        return s;
    }
    private static String onetwo(String one) {
        int c = one.indexOf('C');
        System.out.print(c);
        char[] columnarray = new char[one.length() - c - 1];
        for (int i = c + 1; i < one.length(); i++) {
            columnarray[i] …
Run Code Online (Sandbox Code Playgroud)

java string syntax-error indexoutofboundsexception

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

返回字符串的特定子字符串的第一个字母的索引

我得到一个字符串,我希望找到该字符串的子字符串的第一个字符的索引,只要它出现在父字符串中的第一次.

例如,给定一个字符串"itiswhatitis"和子字符串"is",输出应为2.

java string substring indexof

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

缩短2个变量的IF条件(相同比较)

以下是我需要做的事情:

if ((a<100 and a>-100) and (b<100 and b>-100)):

#i.e., if both a and b lie in the interval (-100,100)
Run Code Online (Sandbox Code Playgroud)

想知道我是否可以用更短的方式写这个.

UPD:找到以下方式.什么比这短?(虽然只有2个变量,这不是很短)

if all((x > -100 and x < 100) for x in (a,b))
Run Code Online (Sandbox Code Playgroud)

python if-statement

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

使用现有数据帧中的值的新数据帧

exdf = pd.DataFrame({'Employee name': ['Alex','Mike'],
 '2014.1': [5, 2], '2014.2': [3, 4], '2014.3': [3, 6], '2014.4': [4, 3], '2015.1': [7, 5], '2015.2': [5, 4]})
exdf


  Employee name  2014.1  2014.2  2014.3  2014.4  2015.1  2015.2
0          Alex       5       3       3       4       7       5
1          Mike       2       4       6       3       5       4
Run Code Online (Sandbox Code Playgroud)

假设上面的数据帧有几个这样的行和列,每个季度的每个员工都有输出。我想用列创建一个新的数据框:

newdf=pd.Dataframe(columns=['Employee name','Year','Quarter','Output'])
Run Code Online (Sandbox Code Playgroud)

因此,新数据帧将有 nxm 行,其中 n 和 m 是原始数据帧中的行和列。我尝试过的是使用嵌套 for 循环填充每一行和列条目。

但我确信有一种更有效的方法。

for i in range(df.shape[0]):
    for j in range(df.shape[1]):
        newdf.iloc[?]=exdf.iloc[?]

Run Code Online (Sandbox Code Playgroud)

python dataframe melt pandas

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

如何在Java中将String数组转换为char数组

给我们一个字符串数组,我们需要一个char [],即所有字符串中所有字符的数组,例如:

输入:[我,爱,你]

输出:[i,l,o,v,e,y,o,u]

首先,我做了一个数组数组。

然后,我找到了所需的char []数组的长度。

到目前为止,我已经尝试了以下方法:

char[][] a1 = new char[str.length][];

for(int i =0;i<str.length;i++){
    a1[i]=str[i].toCharArray();
}

int total=0;
for(int i =0;i<str.length;i++){
    total = total + a1[i].length;
}

char[] allchar = new char[total];

for(int i=0;i<str.length;i++){
    //NOW HERE I WANT TO MERGE ALL THE char[] ARRAYS TOGETHER.
//HOW SHOULD I DO THIS?
}
Run Code Online (Sandbox Code Playgroud)

java arrays string

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